달력

7

« 2012/7 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  

'2012/07'에 해당되는 글 1

  1. 2012.07.03 Jelly Bean 에서 setEmbeddedTitleBar 가 안된다. (2)

그동안 잘 써왔던, 하지만 메소드가 @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();
    }
}

Posted by maruldy

댓글을 달아 주세요

  1. lee 2013.03.07 10:57  댓글주소  수정/삭제  댓글쓰기

    덕분에 젤리빈에서 타이틀을 넣었습니다. 근데... 웹뷰와 겹쳐서 들어가네요... 이걸 해결할 방법이 없을 까요... 웹뷰 위에다 그려버리니... 음....

    • maruldy 2013.03.11 17:39 신고  댓글주소  수정/삭제

      안녕하세요, 혹시 본문 코드에 문제점이 있다면 Apache License 2.0 으로 공개된 아래 코드에서 한번 확인해 보시기 바랍니다.
      직접 테스트 해보고 수정해서 올리고 싶은데 업무시간이라 여의치가 않네요.. ^^; 양해 바랍니다.

      url 은 아래와 같습니다
      http://code.google.com/p/android-titlebar-webview/source/browse/trunk/TitleBarWebView.java?r=2

      private void setEmbeddedTitleBarJellyBean(View) 메소드를 확인해 보시면 됩니다.