如何在Android Studio的菜单应用程序标题栏中的项目之间添加行?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Android Studio的菜单应用程序标题栏中的项目之间添加行?相关的知识,希望对你有一定的参考价值。
我的android应用程序的标题栏中有一个菜单,而不是弹出菜单。其中有一些物品。我想在列表中的一对项目之间添加一行或一个分隔符。我不希望所有项目之间有分隔线,只有一对。我尝试了具有不同ID(无法使用)的组,还尝试了android:actionlayout,没有成功。
我的当前菜单在设计模式下看起来像this。我想做类似this的事情。
包含菜单的我的XML:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:title="@string/editare_nume_jucatori">
<!-- submeniul meu -->
<menu>
<item
android:id="@+id/M_Jucator1"
android:enabled="true"
android:title="@string/Jucatorul1" />
<item
android:id="@+id/M_Jucator2"
android:enabled="true"
android:title="@string/Jucatorul2" />
</menu>
</item>
<item
android:id="@+id/M_Detalii"
android:icon="@drawable/dice10"
android:title="@string/detalii_text_meniu" />
<item
android:id="@+id/M_Despre_Aplicatie"
android:icon="@drawable/dice10"
android:title="@string/despre_aplicatie" />
<item
android:id="@+id/M_Iesire_Aplicatie"
android:icon="@drawable/m3"
android:title="@string/IesireAplicatie" />
</menu>
菜单的我的Java代码:
Menu meniu1; //a variable used in my menu
//to show my menu
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.meniul_meu, menu);
meniu1 = menu; //this is my variable from up declaration
return true;
}
//here execute different actions for items clicked in menu
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
//click on my item ID from menu and execute
case R.id.M_Jucator1:
...(code code)...
return true;
//click on my item ID from menu and execute
case R.id.M_Jucator2:
..(code code)...
return true;
//click on my item ID from menu and execute
case R.id.M_Detalii:
..(code code)...
return true;
//cand dai click pe iesire din meniu
case R.id.M_Iesire_Aplicatie:
..(code code)..
return true;
default:
return super.onOptionsItemSelected(item);
}
} //finish meniu codes
答案
在XML菜单中将您的项目分组,例如:
......
<group>
<items...
</group>
<group>
<items...
</group>
.....
并且在您的代码中使用:
final Menu menu = ((Toolbar)this.findViewById(R.id.your_toolbar)).getMenu();
MenuCompat.setGroupDividerEnabled(menu, true);
以上是关于如何在Android Studio的菜单应用程序标题栏中的项目之间添加行?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用android studio 查看android源码