在Android中,我们可以通过自定义样式来实现对动作栏选项菜单项的背景进行自定义。
首先,在res/values文件夹下的styles.xml文件中添加一个新的样式,例如:
在上面的样式中,我们继承了AppCompat库中的PopupMenu样式,并设置了android:background属性为一个自定义的背景资源。
接下来,在res/drawable文件夹下创建一个新的XML文件custom_menu_item_background.xml,用于定义自定义的背景资源。例如:
在上面的XML文件中,我们使用了一个selector来定义不同状态下的背景颜色。你可以根据需求自定义不同的颜色。
最后,在你的Activity中使用这个自定义样式。例如:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
for (int i = 0; i < menu.size(); i++) {
MenuItem item = menu.getItem(i);
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
item.setActionView(R.layout.action_view);
item.setActionProvider(new CustomActionProvider(this));
item.setCheckable(true);
item.setChecked(true);
item.setSupportActionProvider(new ActionProvider(this));
item.setCustomView(R.layout.custom_view);
item.setTheme(R.style.CustomMenuItemStyle);
}
return true;
}
在上面的代码中,我们为每个菜单项设置了自定义样式CustomMenuItemStyle。
这样就实现了对动作栏选项菜单项的背景进行自定义。你可以根据自己的需求来修改样式和背景资源。