bno*_*ite 2 android android-actionbar
我正在尝试更改Android应用的背景颜色,但我无法做到.我搜索了很多帖子,但没有解决方案解决了我的问题.
这是我的styles.xml:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:actionBarStyle">@style/ActionBar</item>
</style>
<style name="ActionBar" parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="android:background">#ff0000</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我只是想将条形设置为红色.这是我的清单:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MenuActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Run Code Online (Sandbox Code Playgroud)
正如您所见,主题已正确设置.只是你可以看到,这是我的傻瓜:
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
...
minSdkVersion 15
targetSdkVersion 21
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
}
Run Code Online (Sandbox Code Playgroud)
所以,即使这看起来不错,也没有将我的ActionBar设置为红色.我试着跟随很多指南(包括官方指南),我已按照他们的说法做了一切.我错过了什么?感谢您提前耐心:)
既然您正在使用该AppCompat库,您也应该处理较旧的Android版本(就像使用该ActionBarSherlock库时一样):
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:actionBarStyle">@style/ActionBar</item>
<item name="actionBarStyle">@style/ActionBar</item>
</style>
<style name="ActionBar" parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="android:background">@android:color/red</item>
<item name="background">@android:color/red</item>
</style>
</resources>
Run Code Online (Sandbox Code Playgroud)
没有android命名空间的项目用于设置旧版Android上使用的appcompat操作栏.
请参阅此答案以获取进一步参考
您还应该检查,您可能styles.xml为各种屏幕尺寸和sdk版本生成了更多文件.
您可能还希望将ActionBar样式声明添加到这些其他样式:看起来您的测试设备使用另一个样式,而不是默认样式.
| 归档时间: |
|
| 查看次数: |
2806 次 |
| 最近记录: |