2012. 7. 3. 10:32
Jelly Bean 에서 setEmbeddedTitleBar 가 안된다. Android2012. 7. 3. 10:32
그동안 잘 써왔던, 하지만 메소드가 @hide 되어있어서 reflection 을 이용해서 사용해 왔던 WebView.SetEmbeddedTitleBar 메소드가 Jelly Bean 에서는 사라지고 없다.
하지만 Android Developer 사이트에 기고된 컬럼처럼 Backward Compatibility 가 되도록 구현해주자.
public void setEmbeddedTitleBar(WebView webView, View titlebar) {
try {
Method method = WebView.class.getMethod("setEmbeddedTitleBar", new Class[] {View.class});
method.invoke(webView, titlebar);
} catch (Exception ex) {
webView.addView(titlebar,new AbsoluteLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT, 0, 0));
ex.printStackTrace();
}
}
댓글을 달아 주세요
덕분에 젤리빈에서 타이틀을 넣었습니다. 근데... 웹뷰와 겹쳐서 들어가네요... 이걸 해결할 방법이 없을 까요... 웹뷰 위에다 그려버리니... 음....
안녕하세요, 혹시 본문 코드에 문제점이 있다면 Apache License 2.0 으로 공개된 아래 코드에서 한번 확인해 보시기 바랍니다.
직접 테스트 해보고 수정해서 올리고 싶은데 업무시간이라 여의치가 않네요.. ^^; 양해 바랍니다.
url 은 아래와 같습니다
http://code.google.com/p/android-titlebar-webview/source/browse/trunk/TitleBarWebView.java?r=2
private void setEmbeddedTitleBarJellyBean(View) 메소드를 확인해 보시면 됩니다.