2011-03-11 6 views
9

내 앱이 이전 버전과 호환되도록하기 위해 이전 버전의 앱에서 메뉴 버튼을 사용 했으므로 메뉴 버튼 을 표시해야합니다.android honeycomb menu button target

그래서 제가 읽고 있었는데 목표가 11 (3.0) 이상인 경우 메뉴 버튼을 얻지 못했지만 대상은 10 점이라고 말합니다. 내 목표는 11

어떤 생각되어야한다, 그래서

그러나 문제는 내가 조각을 사용하고 있습니다.

+0

내 생각 : 새 API로 이동하고 이전 기능을 되찾기 위해 변경 사항을 시도하지 말고 그냥 사용해보십시오. –

+0

"메뉴 버튼"이란 무엇입니까? 당신은 명확히 할 수 있습니까? – Bostone

+0

블로그 게시물보기 : http : //android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html. 목표 SDK를 14로 설정하고 최소 SDK를 원하는대로 설정하십시오. menu.xlm 파일을 편집하여 메뉴 옵션을 작업 표시 줄에 추가하는 것을 잊지 마십시오. 이 게시물을 참조하십시오 : http://stackoverflow.com/a/9440194/1172181 – Luis

답변

12

Android 옵션에 관계없이 일반 옵션 메뉴가 표시됩니다. 갖고 있다면 :

android:targetSdkVersion="11" 

그러면 안드로이드 3.0+ 장치의 작업 표시 줄에 옵션 메뉴가 나타납니다. 옵션 메뉴의 모든 항목은 오른쪽 상단 모서리의 "오버플로"버튼을 클릭 할 때 사용할 수 있습니다. 귀하의 매니페스트 요소에 android:targetSdkVersion="11"이 있어도 Android 1.x 및 2.x 기기에는 옵션 메뉴가 정상적으로 표시됩니다.

다른 동작을하기 위해 메뉴 버튼을 덮어 쓰는 경우 API 레벨 11 이상에 대한 동작에 대해 다른 트리거를 만들어야합니다. MENU 버튼을 무시하는 것은 처음에는 좋은 생각이 아니 었습니다. 보시다시피 지금은별로 좋은 생각이 아닙니다. android:targetSdkVersion="11"이 있다면 안드로이드 3.0 장치에서 MENU 버튼을 얻을 수있는 방법이 없다는 것을 알고 있습니다. 내가 사용 후 태블릿 장치에서 이전의 옵션 메뉴를 얻기 위해 나를 위해 일한

+0

나는 적어도 한 명의 사용자와 동일한 문제 표를 가지고 있습니다. 나는 펑키 아무것도하지 않는다. 그것은 약간의 옵션을 가진 메뉴 일 뿐이다. 목표는 답변에 표시되는 것처럼 11로 설정되며 모든 것이 에뮬레이터에서 의도 한대로 작동합니다. 그러나 사용자가 작업 표시 줄의 메뉴 "그리드"아이콘을 보지 못하는 것으로보고 된 사례가 적어도 하나 있습니다. 만약 "action bar"가 "back", "home", "running apps"아이콘을 나타내는 검은 색 "foot bar"를 의미한다면 – Bostone

+0

@ DroidIn.net : targetSdkVersion이 11로 설정되어 있고 사용자가 Honeycomb , 시스템 바에서 옵션 메뉴 소프트 버튼을 볼 수 없습니다. 그들은하지 않을거야. 옵션 메뉴는 화면의 오른쪽 상단 모서리에있는 작업 표시 줄에 있습니다. 작업 표시 줄을 비활성화 한 경우 메뉴 옵션에 액세스 할 수 없습니다. – CommonsWare

+0

대신 10으로 설정해야합니까, 도움이 될까요? 실제로 애플 리케이션 도구 모음을 사용하지 않도록 설정했습니다. – Bostone

3

한 가지였다 다음

minSdkVersion="11" 
targetSdkVersion="10" 

내가 무엇을 여기에 도움이 것은 내가 응용 프로그램은이 시스템에 진술하고 있다고 생각 API 10에 대해 테스트되었으므로 이전 옵션 메뉴가 표시됩니다.

내 앱이 태블릿 전용이므로 minSdkVersion을 11로 유지하면 작은 기기에도 설치되지 않습니다. ICS가있는 소형 장치의 경우 설치 사례를 봐야 할 수도 있습니다.