[英]White background on optionsmenu (Android)
在我的三星Galaxy中,当我按下菜单按钮时,菜单具有非常深的蓝色(几乎是黑色)背景。 我认为背景颜色默认情况下取决于rom / version主题。 对于我的应用程序,我需要白色(或非常浅)的背景,否则我的图标几乎是不可见的。 但是我看不出菜单背景有任何改变。
我怎样才能做到这一点?
提前致谢
将其放在您的活动课中:
protected void setMenuBackground()
{
getLayoutInflater().setFactory( new Factory()
{
@Override
public View onCreateView (String name, Context context, AttributeSet attrs)
{
if (name.equalsIgnoreCase("com.android.internal.view.menu.IconMenuItemView"))
{
try
{
LayoutInflater f = getLayoutInflater();
final View view = f.createView( name, null, attrs );
new Handler().post( new Runnable()
{
public void run()
{
// Changes the color of the menu item here
view.setBackgroundColor(Color.WHITE);
}
});
return view;
}
catch (InflateException e)
{
}
catch (ClassNotFoundException e )
{
}
}
return null;
}
});
}
然后创建onCreateOptionsMenu()侦听器:
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
super.onCreateOptionsMenu(menu);
menu.clear();
// Add menus here
setMenuBackground();
return true;
}
这样一来,您就可以将选项菜单的背景更改为任何颜色或图像(在这种情况下为白色)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.