Android样式——Styles
16lz
2021-12-04
https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/res/res/values/styles.xml(android默认样式)
Android样式——Styles
说明
样式(style)是属性的集合,用来指定View或者Window的外观和格式。
这些属性可以是height(高度)、padding(内边距)、font size(字体颜色)等。
样式定义在另一个xml文件中,从布局文件中分离出来。
例如:
1 <TextView2 android:layout_width="fill_parent"3 android:layout_height="wrap_content"4 android:textColor="#00FF00"5 android:typeface="monospace"6 android:text="@string/hello" />
如果使用样式,则可以转换为
1 <TextView2 style="@style/CodeFont"3 android:text="@string/hello" />
CodeFont就是样式文件名,把一些属性从原布局文件中提取出来,存放到了CodeFont文件中。
定义
样式文件必须存放在res/valuse的文件夹中,命名任意,后续为.xml。
CodeFont.xml
1 <?xml version="1.0" encoding="utf-8"?>2 <resources>3 <style name="CodeFont" parent="@style/BaseFont">4 <item name="android:layout_width">fill_parent</item>5 <item name="android:layout_height">wrap_content</item>6 <item name="android:textColor">#00FF00</item>7 <item name="android:typeface">monospace</item>8 </style>9 </resources>
<resources>:根元素。
<style>:属性集合。
<item>:属性。
使用parent,可以继承样式。除此之外,还可以在<style>的命名前添加"继承样式名.",效果一样。例如:
<?xml version="1.0" encoding="utf-8"?><resources> <style name="BaseFont.CodeFont" > <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:textColor">#00FF00</item> <item name="android:typeface">monospace</item> </style></resources>
注意:
引用此样式时的名字为BaseFont.CodeFont。
如果引用系统自带的样式,值的格式为“@android:style/样式名”。我们自定义的样式,值的格式为“@style/样式名”。
应用
两种方式
对单独的View,举例:
布局文件中,<TextView style="@style/CodeFont" android:text="@string/hello" />
对整个Activity或整个应用程序,举例:
AndroidManifest.xml文件中,<activity android:theme="@android:style/Theme.Dialog">或者<application android:theme="@style/CustomTheme">
参考:http://developer.android.com/guide/topics/ui/themes.html
更多相关文章
- 如何将library项目打包成jar文件
- How to decompile .dex file on Android如何反编译.dex文件
- Android中字体加粗
- Android杂谈---Android几种预定义样式
- Android(安卓)源码编译 文件系统制作
- 【Android(安卓)文件管理】分区存储 ( MediaStore 文件操作 )
- 线性布局和相对布局的知识点
- Android(安卓)TextView内容过长加省略号,点击显示全部内容
- Android(安卓)Theme Style Attr