(1)默认theme代码如下:

运行结果:

视觉效果:ActionBar为Dark,背景为Light。

(2)将theme改为Light:

运行结果:

视觉效果:ActionBar和背景都为Light。

(3)与默认theme效果相同的Theme.Holo.Light.DarkActionBar:

出现错误:这个指令只能用于API level 14以上的版本。

修改后就没错了吧

恩 妥妥的了 运行来庆祝一下

视觉效果:看起来与默认theme效果完全相同,用“看起来”是因为笔者暂时还不确定它们是否有区别。

(4)将theme修改为Theme.Holo

运行结果:

视觉效果:ActionBar和背景都变为Dark。

(5)试一下将theme一段删去:

运行结果:同(4)。别打我……我并非有意偷懒,因为这个贴图实在是太麻烦了,这个结果有无穷种可能,没办法列举穷尽。

是这样的:其实有规律可循,并不是没有使用theme就使用默认的theme。它将会运行最近最后一次有theme时生成的app。所以theme自然也是上一次的theme。如果最后一次的theme设为ActionBar和文本都为Dark,删去theme后下次也是这样;如果最后一次的theme设为ActionBar和文本都为Light,删去theme后下次也是这样;如果……不码了……。应该都懂的了,恩……

(6)重点:

在manifest.XML文件中,<application>下的theme修改后会应用到app全局;在单个<activity>下的theme设置只会应用到单一的activity中。没图说个丁日,所以上图顶万言:

前面的几组测试都是在<application>下修改theme的。所以所有Activity——无论是第一个MainActivity还是第二个DisplayMessageActivity,显示的theme都一样。

下图将删去<application>下的theme,分别将MainActivity和DisplayMessageActivity的theme设为@android : style/theme.Holo(Dark) 和

@android : style/theme.Holo.Light (Light) ,你会发现,你会讶异,你是我最压抑最深处的秘密:

没有任何问题了,跟预期想的完全吻合。

接下来再尝试<application>和每个<activity>的theme同时进行设置(为了有更直观的结果,将<application>设为 @android : style/Theme.Holo(Dark);下面两个<activity>设为 @android : style/Theme.Holo.Light(Light)):

运行结果是两个activity的Theme都是Light。因此可以得出结论:单个的<activity>的theme设置将覆盖<application>的theme设置。可理解为<activity>是<application>的子类,子类<activity>的theme方法覆盖了父类<application>的theme方法,因此调用子类<activity>的版本。

转载于:https://www.cnblogs.com/KardelXiao/p/4782223.html

(Android Studio)ActionBar's Theme/Style [ActionBar主题风格修改]相关推荐

  1. Android Studio出现Error:resource style/Base.V25.Theme.AppCompat.Light、aapt2.Aapt2Exception: AAPT2 erro

    Android Studio出现"Error:resource style/Base.V25.Theme.AppCompat.Light"和"Error:java.uti ...

  2. android studio 改字体,Android Studio设置、改变字体和主题的方法

    1.步骤:File >> settings >> Appearance & Behavior >>Appearance >> 来到修改界面 如下 ...

  3. Android系统开发 默认壁纸的定制 主题风格的开发及定制 DDMS 常用adb 命令 抓取Log

    Android系统开发             Android系统本身的功能在增加和完善过程中.在系统开发中如果涉及系统API的改动,则一定要慎重,系统的API的改动可能涉及Android应用程序的不 ...

  4. Android之android studio如何把项目分享到github并提修改的代码到Github

    android studio如何提交代码到Github 第一步.下载git                   第二步:在android studio指定git路径               Fil ...

  5. android studio 使用SVN 锁定文件,防止别人修改(基于Android studio 1.4 )

    首先假设开发 A , 和 开发 B , 在使用 SVN 进行项目管理.那么A如何才能 某个锁定文件,防止B修改. 1.第一步,给这个文件加锁    完成这一步,则这个文件就别锁定了. 2.第二步,假如 ...

  6. Android Studio(一):介绍、安装、配置

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  7. android theme material,Android Studio 换主题(Material Theme..)

    1.去如下网址下载自己喜欢的主题文件xx.jar http://color-themes.com/?view=index 2. 导入方式 下载主题-xxx.jar 注意:如果我们下载下来的jar名字如 ...

  8. 【Android 应用开发】 ActionBar 样式详解 -- 样式 主题 简介 Actionbar 的 icon logo 标题 菜单样式修改

    作者 : 万境绝尘 (octopus_truth@163.com) 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/3926916 ...

  9. android 自定义皮肤,Android Studio 自定义皮肤主题和背景

    新的一年,新的开始,在这里先祝福大家在新的一年收获多多,多升职,多加薪,代码没BUG. 第一 Android Studio自定义皮肤主题-ColorThemes 寒假期间有人问我, "你代码 ...

最新文章

  1. 运维企业专题(6)LVS高可用与负载均衡中篇——VS/TUN模式配置详解
  2. 对 makefile 中 .PRECIOUS 的学习
  3. Jquery获取参数(解决参数中文乱码问题)
  4. 有关UIView、subview的几个基础知识点-IOS开发 (实例)
  5. Homework 1_SQL Server中由于外键约束而删除数据失败
  6. Warning: 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/' already解决
  7. Power Shell08当你远程运行powershell指令(不需要管理员权限)
  8. 读Zepto源码之IOS3模块
  9. 打印网页去掉网址html,Print Edit WE插件,编辑\隐藏\删除网页元素,并支持保存和打印新页面...
  10. 代理模式代码举例(java语言版)
  11. 多视点视频编码快速模式选择算法综述
  12. Java 下数据业务逻辑开发技术 JOOQ 和 SPL
  13. 【历史上的今天】1 月 19 日:苹果推出 Lisa;RIM 发布第一款黑莓手机;计算机先驱诞生日
  14. NFS问题:server not responing 和 RPC call returner error 128
  15. HDU - 4622 Reincarnation
  16. 如何编制试算平衡表_利用Excel制作总账表试算平衡表
  17. 汉罗塔小游戏(自创)
  18. java 获取今天或者某一天是星期几/周几以及几号的方法
  19. 报错:org.springframework.security.web.firewall.RequestRejectedException: The request was not ......
  20. 深度测评Skype和有话通网络电话哪个好

热门文章

  1. 大话网站---从Hello World到高并发网站
  2. 移动界面设计点滴:工欲善其事,必先利其器[转]
  3. Oracle学习笔记:redo重做日志
  4. 阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第7节 内部类_14_匿名内部类的注意事项...
  5. springcloud微服务总结四 负载均衡
  6. iOS开发UI篇—Modal简单介绍
  7. 登录状态保持Session/Cookie
  8. gerrit上sshkey设置问题
  9. 使用axis2进行WebService的开发
  10. Java学习笔记之static