마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

프레그먼트액티비티 액션바에 메뉴 숨기기 보이기 할때 특정 디바이스 안되는 현상

0 추천

안녕하세요.

프레그먼트 액티비티에서 액션바를 넣어서 특정 프레그먼트이면 액션바의 아이템을 1개 보였다 2개보였다 할려고하는데요.

특정 디바이스에서 안된다는 현상이 발생해서요 혹시나 제가 코딩한내용이 잘못된건지 아니면 특정디바이스 잘못인지 확인을 해야해서요. 특정디바이스 문제라도 다른방법을 찾아야 할거같긴하네요 .ㅠㅠ

 

제가 코딩한부분은 이런식으로 했거든요.

혹시 다른방법이 있을까요?? 이런식으로 코딩을 하면 안되는 걸까요?

안된다고 답변을 한 디바이스는 EF34K 랑 buffin 입니다. ( 베가레이서랑 갤럭시 그랜드모델입니다. )

 

@Override
 public boolean onCreateOptionsMenu(Menu menu) {
      MenuInflater inflater = getMenuInflater();
      inflater.inflate(R.menu. main, menu);
       this.menu = menu;

       if( index == FRAGMENT1 ) {
          hideSomeMenu();
      }
       return super .onCreateOptionsMenu(menu);

 }
 public void hideSomeMenu() {
       if( menu == null ) { return; }
      MenuItem item = (MenuItem) menu.findItem(R.id.action_search );
       if( item != null ) {
          item.setVisible( false);
      }

      MenuItem item2 = (MenuItem) menu.findItem(R.id.action_help );
       if( item2 != null ) {
          item2.setVisible( false);
      }

       this.invalidateOptionsMenu();
 }
 public void showSomeMenu() {
       if( menu == null ) { return; }
      MenuItem item = (MenuItem) menu.findItem(R.id.action_search );
       if( item != null ) {
          item.setVisible( true );
      }

      MenuItem item2 = (MenuItem) menu.findItem(R.id.action_help );
       if( item2 != null ) {
          item2.setVisible( true );
      }

       this.invalidateOptionsMenu();
 }
목표토익850 (200 포인트) 님이 2015년 8월 4일 질문

1개의 답변

0 추천
특정 디바이스에서 안된다는 현상이 어떤 것인지 알 수 없네요...
계속 안나오는 것인지. 사라지지 않은 것인지.. 한개만 나오는 것인지 구체적으로 말씀 해 주셔야 할 듯 합니다.
 
아무튼 붙여 놓으신 코드는 FRAGMENT1 일 경우 메뉴를 사라지게만 하고, showSomeMenu 호출은 안하니
FRAGMENT1가 아닐때  나왔다가 FRAGMENT1 로가면, 사라진 이후.. 계속 안나올 듯 한데요...
익명사용자 님이 2015년 8월 4일 답변
단순 안보이는게아니고 오류로 죽는거같습니다.
오류로  죽을 때의 로그를 올려주셔야 파악이 될 듯 합니다.
...