我有一个包含3个项目的操作栏,并希望以不同的方式设置它们(见下图)。问题是当我按如下方式设置样式时:
<style name="MyTheme2" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyTheme.ActionBarStyle</item>
<item name="android:actionMenuTextColor">#DAF9FE</item>
<item name="android:actionMenuTextAppearance">@style/MyActionBar.MenuTextStyle</item>
</style>
<style name="MyTheme.ActionBarStyle" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">@drawable/ab_solid</item>
<item name="android:titleTextStyle">@style/MyTheme.ActionBar.TitleTextStyle</item>
</style>
<style name="MyTheme.ActionBar.TitleTextStyle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:textColor">#DAF9FE</item>
<item name="android:textSize">22sp</item>
</style>
<style name="MyActionBar.MenuTextStyle" parent="android:style/TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:textSize">18sp</item>
</style>
它设置具有该主题的所有3个项目。基本上我想在我的操作栏上只添加一个背景图像,而不是将它应用到所有3个。
item name =“android:selectableItemBackground”&gt; @ drawable / btn_ab_quiz_normal
有没有办法在不创建自定义视图的情况下执行此操作?
我还尝试过将测试按钮图像作为图像的一部分并设置Text =“”,但图标显示很小,因为操作栏图标是特定维度。
答案 0 :(得分:0)
你可以用这个改变颜色:
ActionBar bar = getActionBar();
bar.setBackgroundDrawable(new ColorDrawable("COLOR"));
在menu.xml
中,您可以向ActionBar添加图标。像这样:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/action_search"
android:icon="@drawable/ic_action_search"
android:title="@string/action_search"/>
<item android:id="@+id/action_compose"
android:icon="@drawable/ic_action_compose"
android:title="@string/action_compose" />
</menu>
从main.xml
连接MainActivity
。使用此代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu items for use in the action bar
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return super.onCreateOptionsMenu(menu);
}
如果你想要那个小按钮,我建议你打开Photoshop并创建新项目。
我希望它能帮助......;)