2013-10-30 6 views
2

이것은 내 첫 번째 게시물입니다. 안녕하세요. 모든 사람들이 실수를 용서합니다.안드로이드의 방향 변경에 대한 옵션 메뉴

Android 4.0 프로젝트에서 Options Menu을 (를) 사용하여 ActionBar 중 하나를 클릭하면 열 수 있습니다. 내 메뉴의 항목이 비동기 적으로 업데이트되기 때문에 어떤 경우에는 변경 사항이 적용되기 전에 열리 며 이것이 나에게 적합한 행동입니다. 알다시피, 사용자가 장치의 방향을 변경하면 전체 활동이 다시 생성됩니다 (메뉴와 동일). 이 코드는 내 코드에서 올바르게 처리됩니다. 상태는 Activity입니다.

사용자가 Options Menu을 열고 메뉴가 계속 표시 될 때 방향이 바뀌면 문제가 발생합니다. 메뉴가 다시 만들어지고 표시됩니다. 나는 그것이 창조 된 후에 나타나지 않게하고 싶습니다.

심지어 가능합니까? 나는 onCreateOptionsMenu() 또는 onPrepareOptionsMenu() 방법 중 하나를해야한다고 가정합니다.

+0

스택 오버플로에 오신 것을 환영합니다. [about] (http://stackoverflow.com/about) 페이지는 사이트 사용법에 대한 몇 가지 힌트가 있기 때문에 항상 읽기 시작하는 것이 좋습니다. – Qben

답변

-1

해결 방법은 생각할 수 있습니다. onRestoreInstanceState에서 클래스 변수를 true로 설정하십시오. onPrepareOptionsMenu를 재정의하면 해당 변수가 true 인 경우 false를 반환하고 해당 변수를 false로 다시 설정합니다. 그것은 당신에게 당신이 원하는 행동을 제공해야합니다. 어떤 문제라도 있으면 코드를 게시 할 것입니다.

+0

빠른 응답을 보내 주셔서 감사합니다. 나는 당신의 해결책을 시도했다. 문제는 해결되었지만 원하는 방식이 아닙니다. 'onPrepareOptionsMenu'가 false를 반환하면 메뉴가 생성되지 않습니다.'ActionBar'에 아이콘이 전혀 없습니다. 내가 원했던 것은 복원 후'OptionsMenu'가 열리지 못하게하는 것뿐입니다. 그러나 모든'ActionBar' 아이콘이 여전히 보이기를 바랍니다. –

0

closeOptionsMenu()을 사용하여 OptionsMenu를 수동으로 닫을 수 있습니다. 나중에 언제든지 열어 보려면 openOptionsMenu()으로 전화하십시오.

관련 문제