(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>的版本。

(Android Studio)ActionBar's Theme/Style [ActionBar主题风格修改]的更多相关文章

  1. android studio eclipse keymap theme 快捷键 主题风格设置

    android studio eclipse keymap theme 快捷键 主题风格设置 将Android Studio的快捷键设置与eclipse一致,使用习惯的快捷键才顺手.Mac系统下:进入 ...

  2. Android 自定义属性(attrs)、样式(Style)、主题(Theme)

    Android 自定义属性(attrs).样式(Style).主题(Theme) https://www.cnblogs.com/dandre/p/4507024.html https://blog. ...

  3. Android Studio精彩案例(一)《ActionBar和 ViewPager版仿网易新闻客户端》

    转载本专栏文章,请注明出处,尊重原创 .文章博客地址:道龙的博客 为了能更好的分享高质量的文章,所以开设了此专栏.文章代码都以Android Studio亲测运行,读者朋友可在后面直接下载源码.该专栏 ...

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

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

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

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

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

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

  7. 【Android 应用开发】 ActionBar 样式具体解释 -- 样式 主题 简单介绍 Actionbar 的 icon logo 标题 菜单样式改动

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

  8. Android Studio设置图片背景及主题设置

    因为Android Studio是基于IDEA的,所以IDEA里面能用的插件Android Studio也能用,这次图片背景是依赖IDEA下的一个插件,名为BackgroundImage的插件,用户可 ...

  9. 在Windows下将code style导入到Android Studio的方法

    很多网站上提供了Ahdroid studio的“代码样式”文件,那么作为win平台的用户,我们就需要学会如何导入这个样式文件.我也是查了很久才知道是怎么导入的,下面就是我的经验分享. 一.下载代码样式 ...

随机推荐

  1. Hibernate从入门到精通(三)Hibernate配置文件

    在上次的博文Hibernate从入门到精通(二)Hibernate实例演示我们已经通过一个实例的演示对Hibernate的基本使用有了一个简单的认识,这里我们在此简单回顾一下Hibernate框架的使 ...

  2. 1483:[HNOI]2009 梦幻布丁 - BZOJ

    Description N个布丁摆成一行,进行M次操作.每次将某个颜色的布丁全部变成另一种颜色的,然后再询问当前一共有多少段颜色.例如颜色分别为1,2,2,1的四个布丁一共有3段颜色. Input 第 ...

  3. flex toolTip样式设置

        需要3个文件.一个是样式类,一个样式文件,一个是mxml文件. ●MyToolTip.as package{ import mx.core.UITextField; import mx.ski ...

  4. 【链表】bzoj 1150: [CTSC2007]数据备份Backup

    1150: [CTSC2007]数据备份Backup Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1136  Solved: 458[Submit] ...

  5. Matlab划分测试集和训练集

    % x是原数据集,分出训练样本和测试样本 [ndata, D] = size(X); %ndata样本数,D维数 R = randperm(ndata); %1到n这些数随机打乱得到的一个随机数字序列 ...

  6. Firefly安装说明 与 常见问题

    原地址:http://bbs.gameres.com/thread_223688.html 第三方库依赖:    twisted, python-memcached ftp://ftp.tummy.c ...

  7. javascript div z-index, input tabindex属性说明

    <html> <body> <form> 用户名: <input type="text" tabindex="1" / ...

  8. CentOS 5: Make Command not Found

    在centos 5下安装软件遇到的问题,google了一圈,是因为系统没有安装编译器,那安装就是了,嘿嘿. 解决办法,在SSH下输入下面的命令 yum -y install gcc automake ...

  9. struts2 标签的使用之二 s:iterator

    struts2的s:iterator 可以遍历 数据栈里面的任何数组,集合等等 以下几个简单的demo:s:iterator 标签有3个属性:    value:被迭代的集合    id   :指定集 ...

  10. linux命令补全 忘记命令只记得开头

    linux的shell不仅提供上下箭头来翻阅历史使用过的命令,还提供命令补全功能. 例如,你想创建一个文件夹,只记得是m开头的命令,此时可以: ①输入m ②按键盘上的Tab键两次 (有可能还出现这句话 ...