android清单操作栏徽标
这很简单,但却让我很难过。我希望我的操作栏在清单中显示android:logo指定的@drawable资源:android清单操作栏徽标,android,android-actionbar,Android,Android Actionbar,这很简单,但却让我很难过。我希望我的操作栏在清单中显示android:logo指定的@drawable资源: <application android:allowBackup="true" android:label="@string/app_name" android:icon="@drawable/logo"> <activity android:name
<application
android:allowBackup="true"
android:label="@string/app_name"
android:icon="@drawable/logo">
<activity
android:name=".MainActivity"
android:theme="@style/CustomActionBarTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
活动设置背景:
public class MainActivity extends ActionBarActivity {
private ActionBar bar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
我只需要一个带有标志和背景色#F7430C的动作条 试试这个,如果管用就告诉我
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="android:actionBarStyle">@style/FooBar</item>
<item name="actionBarStyle">@style/FooBar</item>
</style>
<!-- Base application theme. -->
<style name="FooBar"
parent="Widget.AppCompat.Light.ActionBar">
<item name="android:icon">@drawable/logo</item>
<item name="icon">@drawable/logo</item>
<item name="android:background">#F7430C</item>
<item name="background">#F7430C</item>
</style>
</resources>
@样式/FooBar
@样式/FooBar
@可拉伸/标志
@可拉伸/标志
#F7430C
#F7430C
编辑
只有在活动中将
actionBar.setDisplayShowHomeEnabled()
设置为true时,上述解决方案才有效。以下是我解决此问题的方法:
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="android:actionBarStyle">@style/FooBar</item>
<item name="actionBarStyle">@style/FooBar</item>
</style>
<!-- Base application theme. -->
<style name="FooBar"
parent="Widget.AppCompat.Light.ActionBar">
<item name="android:icon">@drawable/logo</item>
<item name="icon">@drawable/logo</item>
<item name="android:background">#F7430C</item>
<item name="background">#F7430C</item>
</style>
随着这项计划的实施,活动中的挫折被评论掉,我得到了一个白色、空白的动作,巴里刚刚注意到FooBar风格的父项是错误的。我已经更新了我的答案,现在尝试一下,如果您仍然有相同的问题,请告诉我。此外,您的AppTheme家长也可能有问题。我已经向父母汇报了最新情况。从外观上看,它现在应该可以工作了。我刚刚更新了三个代码块,问题仍然存在。我有一个黑色的酒吧,白色字体字母和没有可绘制的资源显示。我只能使用bar.setBackgroundDrawable(新的ColorDrawable(color.parseColor(“#F7430C”))设置背景色;在活动中,我更新了我的答案,先尝试一下,如果不行,请通读一遍-。这可能对您有帮助。检查过了,没有工作吗?它没有改变背景颜色吗?是的,但图标没有显示您确定正在编写
getActionBar().setIcon(R.drawable.ic_launcher)在onCreate()
方法中的code>?你的应用程序的minSdkVersion
是什么?你在使用appcompat 21吗?
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="android:actionBarStyle">@style/FooBar</item>
<item name="actionBarStyle">@style/FooBar</item>
</style>
<!-- Base application theme. -->
<style name="FooBar"
parent="Widget.AppCompat.Light.ActionBar">
<item name="android:icon">@drawable/logo</item>
<item name="icon">@drawable/logo</item>
<item name="android:background">#F7430C</item>
<item name="background">#F7430C</item>
</style>
bar.setDisplayShowHomeEnabled(true);