原创 Android笔记17-风格style 和 主题 theme

2014-6-30 01:10 1737 24 24 分类: 软件与OS 文集: Android
1、初初了解
style和theme 都是以独立的XML格式文件存在于 工程res\values这个文件夹下面的。他们都是资源,android本身有默认的style 和 theme资源,但是你也可以自定义自己的style 和 theme 。 
 
2、 自定义style 
自定义步骤:
(1)如果res/values文件夹下面没有style.xml,那么新建一个xml。命名为style;
(2)增加一个 根节点;
(3).
 
举例如下:新建一个style.xml 编辑输入以下内容:
<?xml version="1.0" encoding="utf-8"?>

下面再演示如何引用该自定义的风格:

style="@style/SpecialText"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="Hello, World!" />
当我使用了很多个Text控件,而他们对文字大小和颜色是一样的要求的时候,那么我们就可以用  style="@style/SpecialText"  这么一句话来代替这些设置了。

注意:
比如说,看以下我们设置的两种风格:
<
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3. <style name="homebtn" >  
  4.   <item name="android:layout_width">wrap_contentitem>  
  5.   <item name="android:layout_height">wrap_contentitem>  
  6.   <item name="android:textSize">20spitem>  
  7.   <item name="android:textColor">#FFFFffffitem>  
  8.   <item name="android:gravity">centeritem>  
  9.   <item name="android:layout_marginTop">15dipitem>  
  10.   <item name="android:layout_centerHorizontal">trueitem>  
  11.   <item name="android:background">@drawable/selectoritem>  
  12. style>  
  13. <style name="homeiv">  
  14.   <item name="android:layout_width">wrap_contentitem>  
  15.   <item name="android:layout_height">wrap_contentitem>  
  16.   <item name="android:layout_marginTop">15dipitem>  
  17.   <item name="android:layout_centerHorizontal">trueitem>  
  18. style>  
  19. resources>  
 
我们明显可以看到,这两种风格是存在重复的属性(红色代码)的。为了减小工作量,这时候我们的parent 就派上用场了。
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3. <style name="homeiv">  
  4.   <item name="android:layout_width">wrap_contentitem>  
  5.   <item name="android:layout_height">wrap_contentitem>  
  6.   <item name="android:layout_marginTop">15dipitem>  
  7.   <item name="android:layout_centerHorizontal">trueitem>  
  8.   <item name="android:background">@drawable/homeitem>  
  9. style>  
  10. <style name="homebtn" parent="@style/homeiv">  
  11.   <item name="android:textSize">20spitem>  
  12.   <item name="android:textColor">#FFFFffffitem>  
  13.   <item name="android:gravity">centeritem>  
  14.   <item name="android:background">@drawable/selectoritem>  
  15. style>  
  16. resources>  
看,没有重复了吧。可能现在如此少的代码你觉得没有多少,但是当重复属性很多的时候,你就觉得这个parent 是多么的可爱的了。哈哈,如此即可快速并简单地实现style风格的设置。
 
 
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
24
关闭 站长推荐上一条 /3 下一条