今天在写一个ActionBar时,想把标题颜色改成白色,以匹配app的风格,默认是黑色的:





这种黑色的标题栏,原因是因为清单文件AndroidManifest.xml中,默认配置的风格是:android:theme="@style/AppTheme"


于是我开始尝试更换这个主题;最开始找了几个类似于@android:style/Theme.Light的系统自带的Light模式的主题,但是运行起来发现都会报异常:

java.lang.IllegalStateException:YouneedtouseaTheme.AppCompattheme(ordescendant)withthisactivity


原因是,为了兼容性,我没有使用系统的ActionBar,而是使用的兼容性包V7包中的actionbar:android.support.v7.app.ActionBar,于是导致无法匹配一般Android系统的主题,提示我们需要使用Theme.AppCompat主题或者其子类主题,经过一番查找,发现如下几个主题是可用的:

@style/Theme.AppCompat ,@style/Theme.AppCompat.Light,@style/Theme.AppCompat.Light.DarkActionBar


其中,在使用了@style/Theme.AppCompat.Light之后,达到了想要的效果,问题解决:



更多相关文章

  1. Android(安卓)Studio如何去掉丑陋的标题栏//values文件夹结构的
  2. android Activity setTheme() 更改主题
  3. Android中实现应用切换主题机制
  4. 解决 :android studio 提交代码到git/github失败 Could not read
  5. Android硬件加速的一些问题和错误
  6. 基于android样式与主题(style&theme)的详解
  7. 重新认识一下Android(安卓)的Theme与Style
  8. Android异常01----No package identifier when getting name for
  9. Android样式和主题(一):简介

随机推荐

  1. [android] 记一次软键盘弹起时遮挡EditTe
  2. 解决 Android(安卓)sdk content loader 0
  3. 一个 Android(安卓)任务队列的实现
  4. Android(安卓)Apk反编译得到Java源代码
  5. Android(安卓)进阶学习:Android视图状态及
  6. 最快Android模拟器Genymotion的安装与使
  7. 重新签名Android(安卓)pre-install APK
  8. Android(安卓)自定义Gallery浏览图片
  9. Android(安卓)第三方登录、分享(ShareSDK
  10. 诺基亚有未来么?