우리는 ActionBar를 응용 프로그램에서 사용합니다. 여기에는 아이콘이있는 여러 메뉴 항목이 있습니다. 그 중 하나는 오른쪽 상단의 "도움말"입니다. 일부 항목이있는 하위 메뉴가 있습니다. 사용자가 메뉴 항목을 길게 누르면 ActionBar에 도구 설명이 표시됩니다. 또한 Android 4.4에서 사용자가 하위 메뉴가있는 메뉴 항목을 클릭하고 손가락을 아래로 슬라이드하면 하위 메뉴가 확장됩니다.긴 클릭 후 Actionbar 메뉴 항목이 Android 4.4에서 작동하지 않습니다.
잠시 동안 사용자에게 툴팁과 확장 하위 메뉴가 표시됩니다. 문제는 하위 메뉴 항목 중 하나를 클릭 한 후 루트 메뉴 항목이 더 이상 작동하지 않아 하위 메뉴가 확장되지 않고 강조 표시되지 않는다는 것입니다. 그러나 ActionBar의 다른 메뉴 항목은 여전히 작동합니다. Android의 ActionBar 구현에서 버그 인 것 같습니다. 툴팁과 서브 메뉴 모두 Android 4.4에서 새로운 애니메이션 효과를 얻었으므로 어쩌면 일부 동시성 문제가 발생할 수 있습니다.
현재 모든 대안을 찾고 있습니다. 어떤 도움을 주시면 감사하겠습니다.
메뉴 xml 선언.
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/rate"
android:icon="@drawable/rate_button_bg"
android:title="@string/menu_rate_title"
android:showAsAction="always" />
<item
android:id="@+id/like"
android:icon="@drawable/like_button_bg"
android:title="@string/menu_like_title"
android:showAsAction="always" />
<item
android:id="@+id/share"
android:icon="@drawable/share_button_bg"
android:title="@string/menu_share_title"
android:showAsAction="always" />
<item
android:id="@+id/help"
android:icon="@drawable/global_icon_help"
android:title="@string/menu_help_title"
android:showAsAction="always">
<menu>
<item
android:id="@+id/item_quick_start"
android:showAsAction="always"
android:title="@string/quick_start_tour_text" />
<item
android:id="@+id/item_faq"
android:showAsAction="always"
android:title="@string/frequently_asked_questions_text" />
<item
android:id="@+id/item_help"
android:showAsAction="always"
android:title="@string/contact_customer_support_text" />
</menu>
</item>
</menu>
메뉴를 만듭니다
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_home, menu);
return true;
}
프로세스를 클릭 :
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (R.id.item_quick_start == item.getItemId()) {
// do some stuff
return true;
} else if (R.id.item_faq == item.getItemId()) {
// do some stuff
return true;
...
} else {
// Default value
return super.onOptionsItemSelected(item);
}
}
ur 코드는 ur 문제를 이해하는 데 도움이 될 것입니다. – keshav