Android 样式和主题

一、Android样式

Android样式定义在res/values/styles.xml中

    <style name="text">
        <item name="android:textColor">#00FF00</item>
        <item name="android:textSize">22sp</item>
    </style>

在Layout中引用:

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/show_label"
        style="@style/text" />

在Android中样式也可以继承。当定义的样式需要继承其他样式,如样式text_content要继承text的样式,可以这样写

    <style name="text_content" parent="text">
        <item name="android:textStyle">italic</item>
    </style>

在Layout中引用

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/show_label"
        style="@style/text_content" />

也可以这样写

    <style name="text.text_label">
        <item name="android:background">#555555</item>
    </style>
在Layout中引用

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/show_label"
        style="@style/text.text_label" />


二、Android主题

样式是定义在具体组件上的,而主题是应用在整个应用或某个Activity上的。在Android系统中有一些定义好的主题。如:

        <activity 
            android:name="com.lk.progressbardemo.StyleActivity"
            android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
        </activity>

表示该Activity显示是无标题,全屏。

用户也可以自定义主题,和自定义样式一样,也是在styles.xml中定义

    <!-- 定义一个无title,全屏的主题 -->
    <style name="window_noTitle_fullScreen">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">true</item>
    </style>

在Activity中引用

        <activity 
            android:name="com.lk.progressbardemo.StyleActivity"
            android:theme="@style/window_noTitle_fullScreen">
        </activity>

另外,定一定样式或主题时,一个样式(item)可以依赖于另一个样式(item),如

    <style name="window_noTitle_fullScreen">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">?android:windowNoTitle</item>
    </style>

这里android:windowFullscreen的值会根据android:windowNoTitle值的变化而变化。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值