Java 将溢出菜单添加到自定义标题栏
我正在尝试添加android在我的自定义标题栏上提供的溢出菜单,但它似乎没有出现 这是我活动中的代码Java 将溢出菜单添加到自定义标题栏,java,android,drop-down-menu,Java,Android,Drop Down Menu,我正在尝试添加android在我的自定义标题栏上提供的溢出菜单,但它似乎没有出现 这是我活动中的代码 @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.overflow_menu, menu); return true; } 在my.xml中 <?xml v
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.overflow_menu, menu);
return true;
}
在my.xml中
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/settings" android:title="Settings" />
<item android:id="@+id/help" android:title="Help" />
</menu>
自定义标题条形码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="44dp"
android:orientation="horizontal"
android:gravity="center_vertical"
android:background="#000000"
>
<ImageView
android:id="@+id/indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:src="@drawable/indicator"
android:layout_marginRight="3dip"
/>
<ImageView
android:id="@+id/indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:src="@drawable/launcher_blue_tile"
android:layout_marginRight="5dip"
/>
<TextView
android:id="@+id/titleHeading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/app_name"
style="@style/titleBarHeading"
/>
安卓清单
<activity
android:name=".ILaneMainMenuActivity"
android:icon="@drawable/indicator"
android:label="@string/app_name"
android:theme="@style/appTheme">
</activity>
我查看了谷歌提供的文档以及在线的多个资源,没有找到解决方案。任何帮助都将不胜感激 如果您使用的是操作栏,则溢出菜单由操作栏右侧的“…”提示触发,或通过带有屏幕外菜单按钮的设备的菜单按钮触发
如果您没有使用操作栏(我猜是这样),那么您需要创建自己的菜单系统。您的自定义标题栏应该如何适应操作栏/菜单安排?MenuInflater#inflate将根据添加到/Menu/overflow_Menu.xml文件中的项目创建一个操作栏(post Honeycomb/API 11+)或一个菜单(pre-API-11) 如果您的项目过多,溢出菜单(同样,仅在API 11+中)将自动添加。您只有两个项目-设置和帮助-因此,除非它是一个小屏幕,否则这两个项目可能都适合,所以不需要溢出 你最好探索一下ActionBar的样式化可能性,包括自定义图标和标题,甚至添加自定义视图/按钮。如果你想支持早期的Android版本,你可以有一个只适用于蜂窝式设备的样式,但你必须手动将该布局添加到你的活动中
另一个选项是,这是高度推荐和广泛使用的,但我个人没有使用它的经验。你的“自定义标题栏”是什么?具体地说?编辑以显示标题栏及其实现的清单,我的意思是,我创建了标题栏,但它不是安卓上的主题?Android提供了一个可定制的动作/标题栏,但如果你这样做的话,整个菜单系统将由你自己实现,这是残忍的。@GreenBee:你似乎误解了。正常的菜单系统工作正常(
onCreateOptions菜单()
等),现在称为溢出。显示溢出的触发机制因设备而异(有溢出的设备的菜单按钮,…没有溢出的设备的启示)。如果你不喜欢溢出,或者没有显示动作条,那么你必须自己滚动一些东西,正如我回答的第二段所指出的。谢谢。我的标题栏代码几乎与上面问题中的代码相似。当我使用自定义标题栏时,它会隐藏默认的Android操作栏,而so菜单(启示录)也会隐藏。也许我不需要定制酒吧。你知道一种在标题/动作栏中显示图像的方法吗(不仅仅是Android默认选择的方形应用图标)。我只是需要一个不同的图像在那里-稍微宽一点,有一个自定义的酒吧和菜单系统听起来像是一个滥杀。很抱歉劫持了评论。我的要求很小,所以我想我会在这里要求,而不是一个新的职位。