样式Style和主题Theme
2016-06-07 21:10
399 查看
一、样式Style
样式是属性的集合,以独立的资源文件的形式存放与xml文件中1、自定义样式
在Res/values/styles中添加或者在Res/values中新建xml文件以自定RadioButton的样式为例
(1)在values文件夹下新建xml文件,我命名的是"mystyle.xml"
(2)添加相关代码
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!---->
<style name="RadioButtonStyle">
<!--name 属性自定义-->
<item name="android:layout_height">wrap_content</item>
<!--item中name属性为要设定的相关属性,是系统预先设定的,开始标签和结束标签是这个属性的值-->
<item name="android:layout_width">wrap_content</item>
</style>
</resources>
2、引用样式
<Button style="@style/RadioButtonStyle"></Button><!--@style/ + 自定义的style资源中的name属性-->
3、样式的继承
样式的继承可以提高代码的重用性和可读性.样式的继承有两种方式
(1)通过设置parent属性继承
<?xml version="1.0" encoding="utf-8"?><resources>
<!---->
<style name="RadioButtonStyle" parent="AppTheme">
<!--AppTheme是默认主题,在styles文件中可以看到-->
<!--和java中类似,子样式会继承父样式中定义的属性-->
</style>
</resources>
(2)通过命名规则"."实现
<?xml version="1.0" encoding="utf-8"?><resources>
<!---->
<style name="AppTheme.RadioButtonStyle">
<!--父样式.子样式-->
</style>
</resources>
注:子元素中如果定义了和父元素一样的属性,但值不相同,会优先使用子元素
二、主题Theme
主题同样也是资源的集合,但它不同于style,theme可以编辑所有Activity或者某一Activity1、样式与主题的区别
样式 | 主题 | |
作用范围 | ViewGroup和View | Acitvity |
定义的属性 | 内容 | 内容和窗口 |
优先级 | 高 | 低 |
引用方式 | style="" | theme="" |
引用位置 | layout.xml文件 | androidManifest |
2、自定义主题
自定义theme和自定义style相似<resources> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> </resources>
相关文章推荐
- 5种CSS_RESET借鉴
- CSS长度单位及区别 em ex px pt in
- ie下css兼容问题
- css的性能优化
- css学习成果-双飞翼布局
- css尖头样式
- css3学习--border
- 浅析CSS——元素重叠及position定位的z-index顺序
- IE的css hack
- Andoroid中控件引用style样式
- ZenCoding 一种快速编写HTMLCSS代码的方法
- 100多个纯CSS动画图标
- CSS实现背景透明,文字不透明,兼容所有浏览器
- css默认值汇总
- flexbox功能、兼容、原理
- ps cc下载地址及破解教程
- css切图
- CSS超出部分显示省略号…代码
- error sass/styles.scss (Line 4: Invalid CSS after "銆€銆€": expected "{", wa s "}")
- Code笔记之:CSS块级元素、内联元素概念