【发布时间】:2010-04-10 10:18:40
【问题描述】:
如果 Android 中的菜单项具有可绘制的图标,我们可以为其设置标题吗?
我有一个菜单项的图标,如果我设置了图标,那么为该菜单项设置的标题将不可见。
这可能吗?
希望尽快得到答复。
问候 苏尼尔
【问题讨论】:
如果 Android 中的菜单项具有可绘制的图标,我们可以为其设置标题吗?
我有一个菜单项的图标,如果我设置了图标,那么为该菜单项设置的标题将不可见。
这可能吗?
希望尽快得到答复。
问候 苏尼尔
【问题讨论】:
这绝对是可能的。这样的代码有效:
public boolean onCreateOptionsMenu(Menu menu){
menu.add(0, MENU_PAUSE, 0, "Pause").setIcon(R.drawable.pause);
return true;
}
这将创建一个菜单,其中包含一个项目,由 int MENU_PAUSE(唯一标识符号)引用,标题为“Pause”,图标从 res/drawable 暂停。
如果这不适合你,你能告诉我们你的代码吗?
编辑以提供基于 cmets 的更多信息:
事实证明,图像的大小很重要。默认的 Android 菜单图像是 48*48 或更小,因此看起来也必须使用类似的尺寸。注意:我没有尝试不同的屏幕尺寸,这仅适用于 320x480 屏幕。
另一种方法是更改菜单的默认背景。这些可以通过在清单中为您的应用程序设置主题然后放入以下行来修改:
<item name="android:panelBackground">@drawable/yourMenuDrawable</item>
<item name="android:panelFullBackground">@drawable/yourOtherMenuDrawable</item>
普通菜单使用panelFullBackground,因此应该是您首先替换的菜单。您可以在您的SDKfolder/platforms/xxx/data/res/ 中找到Android 使用的默认图像,它们被称为menu_background.9.png 和menu_background_fill_parent_width.9.png。
【讨论】:
是的,你可以。只需将withText 添加到android:showAsAction 属性即可。
示例:
<item android:id="@+id/menu_save"
android:icon="@drawable/ic_menu_save"
android:title="@string/menu_save"
android:showAsAction="ifRoom|withText" />
详情请见https://developer.android.com/guide/topics/ui/actionbar.html:)
【讨论】: