안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
TapActivity로 4개의 Activity를 구성하고있습니다.
그리고 OptionMenu 를 설정하려고하는데 잘 안되네요..
문제는 OptionMenu를 활성화 하려고 하면
메인, 즉 TableActivity를 구성한 곳에서 optionMenu를 줘야 하더군요..
(만약 OptionMenu를 안주고 각 Activity에 OptionMenu를 주면 OptionMenu가 활성화 되지 않습니다.)
그러면 각 4개의 탭 ,
A, Activity
B, Activity
C, Activity
D, Activity
이 네개의 텝에 모두 OptionMenu 가 같은 값으로 표시됩니다.
하고싶은건 Activity의 OptionMenu만 활성화 하고싶은데.. 다른건 비 활성화구요..
구글링하다가 해결책은 못찾아서 올립니다.
2013.01.30 05:54:36
답변감사드립니다.
말씀해주신대로 TabAcrivity에서
return false; 값을 주고
서브 클래스에서
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater menuInflator = new MenuInflater(this);
menuInflator.inflate(R.menu.main, menu);
return true;
}
했는데 역시 안되네요..
TabActivity에서 true, false로 설정해 놓으면 서브 액티비티에서 옵션 메뉴자체가 활성화 되지 않습니다.
그리고 디버그 모드로 테스트 해봤는데 서브클래스에서 onCreateOptionsMenu 메소드 자체가 실행되질 않습니다..
제가 어디를 간과한곳이 있을까요?ㅠ
로그 찍어서 확인해보니 TabActivity 의 onCreateOptionsMenu 메소드 보다
서브 클래스의 onCreate 메소드가 먼저 호출하더라구요..
음.. 좀더 생각을 해봐야 겠습니다 ㅠ




제대로 생각은 안나지만 tabActivity에서
onCreateOptionsMenu(Menu menu){
return false;
}
이렇게 해주고 서브Activity에서 메뉴 구현해주면 될거같네요. 터치리스너처럼 리턴값에 따라 서브로 내려갈지 말지 정하는 걸로 알고있습니다.