Android Show DropDown菜单在MenuItem上单击 [英] Android Show DropDown Menu on MenuItem click
本文介绍了Android Show DropDown菜单在MenuItem上单击的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在 MenuItem 上显示 DropDown 菜单,就像,但我已经知道 ActionBar.setListNavigationCallbacks() code>已被弃用。
谢谢!
解决方案
创建您的菜单xml如下
< menu xmlns:android =http://schemas.android.com/apk/res/android>
< item
android:id =@ + id / menu_item_action_parameters
android:title =@ string / text_parameters
android:icon =@ drawable / ic_menu_parameter
app:showAsAction =ifRoom | withText/> >
< menu>
< item
android:id =@ + id / action_dropdown1
android:title =@ string / dropdown_1/>
< item
android:id =@ + id / action_dropdown2
android:title =@ string / dropdown2/>
< item
android:id =@ + id / action_dropdown3
android:title =@ string / dropdown3/>
< / menu>
< / item>
< item
更多项
< / item>
< / menu>
然后
@Override
public boolean onOptionsItemSelected(MenuItem item){
int id = item.getItemId();
switch(id){
case R.id.action_dropdown1:
...
return true;
case R.id.action_dropdown2:
...
return true;
...
默认值:
返回super.onOptionsItemSelected(item);
}
}
I want to show DropDown menu on MenuItem click just like this.
Like this
Note that this item was added like:
<item
android:id="@+id/menu_item_action_parameters"
android:title="@string/text_parameters"
android:icon="@drawable/ic_menu_parameter"
app:showAsAction="ifRoom|withText"/>
</item>
And in my code:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.menu_item_action_parameters:
// What to do here?
break;
}
return super.onOptionsItemSelected(item);
}
I have seen this link but I have came to know that ActionBar.setListNavigationCallbacks()
has been deprecated.
Thanks!
解决方案
Create your menu xml as follow
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_item_action_parameters"
android:title="@string/text_parameters"
android:icon="@drawable/ic_menu_parameter"
app:showAsAction="ifRoom|withText"/> >
<menu>
<item
android:id="@+id/action_dropdown1"
android:title="@string/dropdown_1" />
<item
android:id="@+id/action_dropdown2"
android:title="@string/dropdown2" />
<item
android:id="@+id/action_dropdown3"
android:title="@string/dropdown3" />
</menu>
</item>
<item
more item
</item>
</menu>
Then
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.action_dropdown1:
...
return true;
case R.id.action_dropdown2:
...
return true;
...
default:
return super.onOptionsItemSelected(item);
}
}
这篇关于Android Show DropDown菜单在MenuItem上单击的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文