当前位置:编程学习 > wap >>

如何更改MENU菜单内图标的大小以及背景颜色?

请问大家如何更改MENU菜单内图标的大小以及背景颜色.
我的图标是32x32大小的,但放在menu菜单内显得很小,想改大点,该如何操作? --------------------编程问答-------------------- 标也可以通过setIcon()函数被添加到菜单项中 --------------------编程问答--------------------
引用 1 楼 zcpangzi 的回复:
标也可以通过setIcon()函数被添加到菜单项中


这个是添加图标,我已经添加了,关键是图标显示太小,需要放大一点,而且我想改变一下背景颜色,该如何操作啊? --------------------编程问答-------------------- 没有接口? --------------------编程问答-------------------- 没看到有此类接口有啊。 --------------------编程问答-------------------- 如何更改menu的背景颜色呢?默认按下去为橘黄色,我想改另外一个颜色,该如何改啊。 --------------------编程问答-------------------- 想到个方法,不知是否可行,截取click消息,往菜单上贴图,或者重写menu控件? --------------------编程问答-------------------- --------------------编程问答--------------------
引用 6 楼 zcpangzi 的回复:
想到个方法,不知是否可行,截取click消息,往菜单上贴图,或者重写menu控件?


应该有设background color才对啊,重写控件这个太复杂了吧. --------------------编程问答--------------------
引用 7 楼 readfuture 的回复:


google没搜索到 --------------------编程问答-------------------- <item android:id="@+id/sad"
                android:title="Sad"
                android:background="#22222222"
                android:icon="@drawable/stat_sad" />

--------------------编程问答-------------------- 楼上的对! --------------------编程问答-------------------- 可以用自己定义的layout来作为菜单布局 --------------------编程问答-------------------- 其实我是想在按下时改变MENU的背景色,但以下设置没起到作用
<item android:state_pressed="false" 
        android:drawable="@drawable/icon_menu_stereo" 
        android:background="#22222222"/> --------------------编程问答-------------------- 学习了 --------------------编程问答-------------------- 真是。。。。
自己定义一个Bitmap放到Menu上不就行了么,各种状态下用不同的图片。。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:state_focused="true"
        android:drawable="@drawable/buttonbar_focused" />
    <item
        android:state_pressed="true"
        android:drawable="@drawable/buttonbar_pressed" />
    <item
        android:state_selected="true"
        android:drawable="@drawable/buttonbar_active" />
    <item
        android:state_selected="false"
        android:drawable="@drawable/buttonbar_inactive" />
</selector> --------------------编程问答--------------------
引用 15 楼 lmdy2001 的回复:
真是。。。。
自己定义一个Bitmap放到Menu上不就行了么,各种状态下用不同的图片。。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_focused="true"
android:drawable="@drawable/buttonbar_focuse……


这只是改变了MENU的button imgae,并没有改变背景啊.这个和ImageButton不一样好象,ImageButton通过setBackgroundResource可以修改背景图片. --------------------编程问答-------------------- 看看menu自己实现的有关布局的文件,不过感觉自己画一个更好看 --------------------编程问答-------------------- 我问一下楼主,怎样设置menu的大小呢,,用它显示的按钮感觉占屏幕有点大,我想设置小点,, --------------------编程问答--------------------
引用 18 楼 zzz123098 的回复:
我问一下楼主,怎样设置menu的大小呢,,用它显示的按钮感觉占屏幕有点大,我想设置小点,,


是啊  怎么设置小点捏  我也在找这个问题 --------------------编程问答-------------------- 改变menu的颜色,可以这么实现,不知道是不是你要的结果:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
       setMenuBackground();
       return super.onCreateOptionsMenu(menu);
}


protected void setMenuBackground() {
MenuDemo.this.getLayoutInflater().setFactory(
new android.view.LayoutInflater.Factory() {
@Override
public View onCreateView(String name, Context context,
AttributeSet attrs) {
// 指定自定义inflate的对象
if (name.equalsIgnoreCase("com.android.internal.view.menu.IconMenuItemView")
|| name.equalsIgnoreCase("com.android.internal.view.menu.ListMenuItemView")) {
try {
LayoutInflater f = getLayoutInflater();
final View view = f.createView(name, null,
attrs);
new Handler().post(new Runnable() {
public void run() {
// 设置背景图片
view.setBackgroundResource(R.drawable.upcorners_shape);
}
});
return view;
} catch (InflateException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
return null;
}
});
}
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,