? ? ? 安卓的style(样式) 和主题(Theme) 是安卓界面设置的重要部分,个人觉得安卓的开发比JavaPC软件更加灵活,但是也更加麻烦,安卓的样式在本工程项目res / values / style.xml 文件中,样式文件可以让你自定义自己组建的样式,也可以定义全家组件的样式,比如,设置透明,设置字体颜色,设置程序没有状态栏,背景色等等,功能很强大,大多数有关于组建外观的,都可以用style设置,还不知道可不可以设置多个style.xml文件,但是我觉得有一个文件足够,虽然我的等级还没到大神的地步,也不太清楚,下面来介绍如何设置全局组件和局部组件样式
?
?
? ? ? ?1. 全局样式(Theme):
? ? ? ??<!-- 全局字体样式-->
? ? ?<style name="DefaultFontStyle">?
??????? <item name="android:textSize">18px</item>
??????? <item name="android:textColor">#0000CC</item>
??? </style>
????<!-- name属性就是这个style的名字 -->
??? <!-- 全局背景色-->
??? <style name="DefaultBgColor" parent="@style/DefaultFontStyle">?
??????? <item name="android:background">#F2F2F2</item>
??? </style>
????<!-- parent是代表继承的style样式,系统已经给定义了很多默认的样式我们可以直接用 -->
?
??? <!-- 全局样式-->
??? <style name="DefaultStyle" parent="@style/DefaultBgColor">?
??? </style>
?
?
?
? ? ? 2. 局部样式:
?
? ? ?<style name="MyImageView" >
? ? ? ? <item name="android:windowBackground">@android:color/transparent</item>
? ? </style>
? ? <!-- 设置透明 -->
? ? <style name="MyButtonStyle">
? ? ? ? <item name="android:background">@android:color/transparent</item>
? ? </style>
?
这里在style文件中定义自己的ImageView和Button样式,然后我我们在写Activity 文件组件要用到的时候就这样引用它:
?
? ? ? ?<ImageView
? ? ? ? android:id="@+id/imageView2"
? ? ? ? style="@style/MyImageView"
? ? ? ? android:layout_width="wrap_content"
? ? ? ? android:layout_height="fill_parent"
? ? ? ? android:src="@drawable/titlecard3" />
?
当然也可以对单个Activity进行设置,这个时候我们就要在本工程的根目录下的 ?AndroidManifest.xml ?文件中写了,这个文件包含了本安卓应用所有注册了的 Activity,方法如下:
? ? ??<activity android:name=".AccountManageActivity"
????? android:theme="@style/DefaultStyle">
?
关于继承样式:
? ? ? ??如果一个TextView自己设置了样式,它的ViewGroup设置了样式,activity设置了主题,application设置了主题,那么到底是通过怎么一个顺序来应用这些样式呢?
?
? ? ? ? ?它会先读取自己样式的值,对于自己没有的样式向上查找第一个找到的值即为要采取的值。依次读取的顺序为View自己的样式->上一层ViewGroup的属性值->上上层ViewGroup的属性值->…->activity主题->activity主题。
?
?
?
?
?
?
?
?
?