2012-01-19 1 views
3

내 프로젝트에 다음 메뉴 XML을 사용하고 있습니다 :LeftNavBar 안드로이드를 준수하지 않습니다 showAsAction는 = "항상"

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:id="@+id/user_cp" 
     android:icon="@drawable/gear" 
     android:showAsAction="always" 
     android:title="@string/usercp" 
     /> 
    <item 
     android:id="@+id/pm" 
     android:icon="@drawable/sym_action_email" 
     android:showAsAction="always" 
     android:title="@string/private_message" 
     /> 
    <item 
     android:id="@+id/refresh" 
     android:icon="@drawable/ic_menu_refresh" 
     android:title="@string/refresh" 
     /> 
    <item 
     android:id="@+id/settings" 
     android:icon="@drawable/ic_menu_preferences" 
     android:title="@string/settings" 
     /> 
    <item 
     android:id="@+id/logout" 
     android:icon="@drawable/ic_menu_logout" 
     android:title="@string/logout" 
     /> 
</menu> 

언제 구글 TV 최대 내 응용 프로그램이로드 (에뮬레이터 또는 실제 장치) LeftNavBarLibrary (http://code.google.com/p/googletv-android-samples/source/browse/LeftNavBarLibrary)는 처음 두 메뉴 항목에 대해 android : showAsAction = "always"속성을 무시합니다. 이 항목은 항상 소프트 메뉴 안에 있습니다. OptionsDisplay.java에 난은 "항상"메뉴 옵션과 다른 아무것도이 참조를 참조 LeftNavBarLibrary에서 상대 :

private void refreshExpandedState() { 
    // Menu icon. 
    setOptionExpanded(mView.getChildAt(1), mExpanded); 
    // "Show always" options. 
    ViewGroup optionsContainer = getOptionsContainer(); 
    for (int i = 0; i < optionsContainer.getChildCount(); ++i) { 
     setOptionExpanded(optionsContainer.getChildAt(i), mExpanded); 
    } 
} 

가 LeftNavBarLibrary이 기능을 사용할 수 있습니까 아니면 내가 그것을 자신을 구현 막혔어요? 이 응용 프로그램에서는 버튼이 실제 작업이고 탭으로 대체 될 수있는 것이 아니기 때문에 ActionBar에서 작업 항목을 사용하는 것이 중요합니다.

편집 : LeftNavBarLibrary가 옵션 메뉴를 전혀 존중하지 않는 것처럼 보이는지, 필요 여부에 관계없이 옵션 버튼이 표시됩니다.

답변

2

작업 항목을 LeftNavBar에 배치 할 수 없으면 항상 일반 Option 메뉴 항목으로 표시됩니다.

관련 문제