android Theme & Style

首先,什么是Style,什么是Theme?

  • Style:是一个包含一种或者多种格式化属性的集合,我们可以将其用为一个单位用在布局XML单个元素当中。比如,我们可以定义一种风格来定义文本的字号大小和颜色,然后将其用在View元素的一个特定的实例,用于单个控件中
  • Theme:是一个包含一种或者多种格式化属性的集合,我们可以将其为一个单位用在应用中所有的Activity当中或者应用中的某个Activity当 中。比如,我们可以定义一个Theme,它为window frame和panel 的前景和背景定义了一组颜色,并为菜单定义可文字的大小和颜色属性,可以将这个Theme应用在你程序当中所有的Activity里,多用于application,activity中

其次,定义Styles和Themes资源的XML文档的结构

对每一个Styles和Themes,给<style>元素增加一个全局唯一的名字,也可以选择增加一个父类属性。在后边我们可以用这个名字来应用风格,而父类属性标识了当前风格是继承于哪个风格。在<style>元素内部,申明一个或者多个<item>,每一个<item>定义了一个名字属性,并且在元素内部定义了这个风格的值。

styles.xml
<resources>
<style name=”CustomStyles″>
<item name=”android:textSize”>18sp</item>
<item name=”android:textColor”>#EC9237</item>
</style>
<resources>
使用style
<TextView
style=”@styles/CustomStyles
....
/>

Themes.xml
<resources>
<style name=”CustomTheme” parent=”@android:style/Theme.Light.NoTitleBar.Fullscreen”>
<!--<item name=”android:windowNoTitle”>true</item>-->
<item name=”android:textSize”>14sp</item>
<item name=”android:textColor”>#FFFF0000</item>

</style>
</resource>
使用Theme
<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@themes/ CustomTheme "
         >
        <activity android:name=".ActivityA"
        ....
        android:theme="@themes/ CustomTheme "
        / >
<activity android:name=".ActivityB"
            android:theme="@android:style/Theme.Dialog"/>
</application>
系统提供的parent有
Android-Theme

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值