灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:1907回复:0

Android风格设计(style)

楼主#
更多 发布于:2012-09-06 14:02

Android的风格设计(style)是一个很重要的功能,因为它可以让应用程序里的控件(widget)个性化。风格设计的使用如下:

Android的项目里以XML的资源来定义风格
一个Android项目可以定义多个风格
让widget套用其中的一个样式
Android的style功能,主要的对象是widget,风格是为了套用到widget上;另外Android提供布景(theme)功能,可以做更大范围的套用。
下面是一个风格定义的具体例子:
在/res/values/目录下建立一个新文件style.xml,编辑内容如下:
[html] <?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="myText">
        <item name="Android:textSize">18sp</item>
        <item name="Android:textColor">#00FF00</item>
    </style>
    <style name="myButton">
        <item name="Android:background">#00BFFF</item>
    </style>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="myText">
        <item name="Android:textSize">18sp</item>
        <item name="Android:textColor">#00FF00</item>
    </style>
    <style name="myButton">
        <item name="Android:background">#00BFFF</item>
    </style>
</resources>
style.xml语法说明:

在<resource>标签定义资源项目,<style>标签用来定义风格资源;
<style>的name属性定义风格名称,widget使用此名称套用;
<item>标签定义此风格的内容;
textSize  ——  字体大小
textColor —— 字体颜色
background —— 背景
更多,参考Android Reference
定义好style后,就可以让widget套用。
让widget套用定义好的style方法很简单,只需在main.XML中的widget项目属性添加定义好的style name就可以了,编辑main.XML:
[html] <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:orientation="vertical" >

    <TextView
        style="@style/myText"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        Android:text="@string/hello" />

    <Button
        Android:id="@+id/btn"
        style="@style/myButton"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content" />

</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_width="fill_parent"
    Android:layout_height="fill_parent"
    Android:orientation="vertical" >
    <TextView
        style="@style/myText"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        Android:text="@string/hello" />
    <Button
        Android:id="@+id/btn"
        style="@style/myButton"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content" />
</LinearLayout>
程序执行效果:





喜欢0 评分0
游客

返回顶部