Android Studio中主题样式的使用方法详解
1.主题
主题是包含一种或多种的格式化属性集合,在程序中调用主题资源可改变窗体的样式,对整个应用或某个Activity存在全局性影响。
定义位置:res/values
目录下的styles.xml文件中
标签
<style </style :定义主题
<item </item :设置主题的样式
示例(定义一个名为AppTheme的主题)
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"
<!-- Customize your theme here. --
<item name="colorPrimary" @color/colorPrimary</item
<item name="colorPrimaryDark" @color/colorPrimaryDark</item
<item name="colorAccent" @color/colorAccent</item
</style
主题的使用
(1)XML文件中:android:theme =”@style/AppTheme” (2)Java代码中:setTheme(R.style.AppTheme);
2、样式
样式:设置View的具体样式。
定义位置:res/values目录下的styles.xml文件中
标签
<style </style :定义样式 <item </item :设置控件的样式
在XML文件中调用方法
style=”@style/textViewSytle”
3、自定义样式
当自定义的样式或者主题不能满足需求时,还可以自定义样式,自定义样式和主题的步骤为:
1) 在res/values 目录下创建一个样式文件style.xml,添加一个<resources
根节点。
2) 在<resources 节
点中添加一个<style 节点,并在该节点中为样式或主题定义一个唯一的名字,也可以选择增加一个父类属性,表示当前风格继承父类的风格。
3) 在<style 节点中声明一个或多个<item ,每个<item 节点需要定义一个属性名,并在元素内部设置这个属性的值。
总结
(1)样式:
Android中的样式和CSS样式作用相似,都是用于为界面元素定义显示风格,它是一个包含一个或者多个View控件属性的集合。样式只能作用于单个View,如EditText、TextView,使用样式可以指定多个控件具有的重复属性统一抽取出来进行编写,避免书写大量重复代码。
(2)主题:
主题也是包含一个或者多个View控件属性的集合,但它作用范围不同。主题是通过AndroidManifest.xml中的<application 和<activity 节点用在整个应用或者某个Activity,它的影响是全局性的。如果一个应用中使用了主题,同时应用下的View也使用了样式,那么当主题和样式中的属性发生冲突时,样式的优先级高于主题。
在Android系统中,自带的样式和主题都可以直接拿来用,例如设置主题可以通过android:theme="android:style/…"。
到此这篇关于Android Studio中主题样式的使用的文章就介绍到这了,更多相关android studio 主题样式内容请搜索ZaLou.Cn
- 学好webpack,一名前端开发工程师的自我修养
- 活动安排问题--贪心算法
- Spring MVC 基于URL的映射规则(注解版)
- Ruby中如何识别13位的时间戳
- 小瓜牛漫谈 — String
- [logstash-input-http] 插件使用详解
- 在Elasticsearch中查询Term Vectors词条向量信息
- 使用asp调用.net xml web services
- 数组乘积--满足result[i] = input数组中除了input[i]之外所有数的乘积(假设不会溢出
- 锋利的JQuery —— 选择器
- 套接字选项
- CSS 之 选择器
- 找出一个数组中出现次数最大的数
- Grunt-cli的执行过程以及Grunt加载原理
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- jQuery 插件
- dotnet 基于 dotnet format 的 GitHub Action 自动代码格式化机器人
- 10.7 border-width边框粗细:outline与border有什么不同?
- WPF 非客户区的触摸和鼠标点击响应
- Flink 解决 No ExecutorFactory found to execute the application
- 10.8 如何用js验证一下boz-sizing样式对块级盒子大小的影响?
- 10.9 块级盒子的内外边距:如何使用box-sizing重新定义盒子模式?
- 10.10 圆角边框border-radius与盒子阴影:如何使用它实现圆等特殊形状?
- 函数内部的this指向
- 正则表达式在js中的使用
- 10.11 如何使用git?
- 10.13 如何使用transform样式?
- 正则表达式中的特殊字符
- ES6新增语法--let
- ES6新增语法--const