2012-12-17 2 views
0

하위 응용 프로그램에서 Sherlock Actionbar 라이브러리를 사용하고있는 응용 프로그램을 개발 중입니다.이 응용 프로그램에는 메뉴에 5 개의 항목이 있으며 옵션 메뉴에 나타납니다. 내가 작업 표시 줄에서 메뉴를 누르면 해당 항목 목록이 제대로 표시되지만 오버플로 메뉴 버튼 (하드웨어 메뉴)을 클릭하면 옵션이 표시되지 않습니다. 두 메뉴 모두에있는 모든 항목이 필요합니다.옵션 메뉴 및 넘침 메뉴 문제

android:showAsAction="never"으로 시도했지만 오버 플로우 메뉴에는 표시되지만 actionbar에 나타나는 옵션 메뉴에는 표시되지 않습니다. 그리고 내가 android:showAsAction="ifRoom|withText"을 수행하면 오버플로 메뉴가 아닌 작업 표시 줄의 옵션 메뉴에만 나타납니다. 따라서이 문제에 대한 해결책을 찾으십시오.

답변

1

OnCreateOptionsMenu()을 재정의 했습니까? 메뉴 버튼을 지원하려면이 기능이 필요합니다. 도 및 onOptionsItemSelected() :

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    MenuInflater mi = getMenuInflater(); 
    mi.inflate(R.menu.activity_main, ((MenuWrapper) menu).unwrap()); 
    return true; 
} 

편집 : 이는 내 꺼야?

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
    case R.id.menu_logout: 
     logout(); 
     return true; 
    case R.id.menu_settings: 
     openSettings(); 
     return true; 
    case android.R.id.home: 
     getSlidingMenu().toggle(); 
     return true; 
    default: 
     return super.onOptionsItemSelected(item); 
    } 
} 
+0

@Override \t 공개 무효의 onCreateOptionsMenu (메뉴 메뉴 MenuInflater의 인플레이터) { \t \t inflater.inflate (R.menu.activity_main 메뉴); \t \t //getSupportMenuInflater().inflate(R.menu.activity_main, menu); \t \t super.onCreateOptionsMenu (menu, inflater); \t \t \t 예 – user123

+0

예. – user123

+0

대기 ... 오버플로 아이콘이 실제로 메뉴 버튼이있는 기기에 표시되고 있습니까? 방금 그 일이 일어나지 않는다는 것을 깨달았 기 때문에. 당신은 그 장치의 중앙 하단에있는 메뉴를 얻으려고합니다. –