Android主题与样式(1)

来源:互联网 发布:人工智能产业链及个股 编辑:程序博客网 时间:2024/05/16 02:39

1.样式与主题的区别

1.1样式应用于特殊的组件,主题应用与整个应用或整个Activity

1.2主题不仅单单显示内容的风格(大小、颜色),而且可以设置窗口的显示风格

1.3当主题的设置属性与样式的设置属相相同时,系统按样式的设置属性显示

1.4系统定义的一些常有主题:

<activity android:theme="@android:style/Theme.Dialog"></activity>对话框风格

<activity android:theme="@android:style/Theme.Translucent"></activity>透明风格

可以通过文档reference->android->R.style查看

2.在styles.xml文件里声明样式或主题

2.1<resources xmlns:android="http://schemas.android.com/apk/res/android">

<style name="AppTheme" parent="android:Theme.Light" />
<!-- 样式1 -->
<style name="textViewStyle">
<item name="android:textSize">22sp</item>
<item name="android:textColor">#FF0000</item>
</style>
<!-- 样式2继承样式1 -->
<style name="childStyle" parent="textViewStyle">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">wrap_content</item>
<!-- 覆盖父style的属性 -->
<item name="android:textColor">#00FF00</item>
</style>
<!-- 继承父样式的格式2 父样式.子样式-->
<style name="childStyle.subChildStyle">
<item name="android:textColor">#0000FF</item>
</style>


<style name="theme">
<item name="android:windowNoTitle">true</item><!-- 没标题 -->
<!-- windowFullscreen 随着windowNoTitle的更改而更改 -->
<item name="android:windowFullscreen">?android:windowNoTitle</item><!-- 全屏显示 -->

</style>
</resources>

2.2样式应用与特定控件

<TextView
android:id="@+id/textView"
style="@style/childStyle.subChildStyle"
android:text="@string/hello_world"
/>

2.3主题应用与整个应用或activity在manifest.xml文件里进行设置

2.3.1应用与整个应用

<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/theme" >

2.3.2应用与整个activity

<activity
android:name=".MainActivity"
android:label="@string/title_activity_main"
android:theme="@style/theme">