您的位置:首页 > 移动开发 > Android开发

Android SDK开发范例大全 --3.6样式化的定型对象

2015-12-01 16:26 489 查看
一旦文字一多,总是要有一个个指定文字的大小、颜色也不是办法,那么有没有类似CSS样式的办法,用来指定颜色、大小呢?在Android程序开发过程中,也同样可以通过样式(Style)的方式,初始化TextView的文本颜色、大小。当然这个范例只是抛砖引玉,在Layout的任何对象都可以用样式化的方式来改其外观。

而以下的范例中,将创建两个TextView对象作为对比,使其呈现两种不同的样式作为练习,而Style的写法与先前介绍的颜色常数(color.xml)相同。同样是定义在res/values下面,但其定义的方式则有所差异。

src/com.helloworld/HelloWorldActivity.java

package com.helloworld;

import android.app.Activity;

import android.os.Bundle;

public class HelloworldActivity extends Activity {

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);  

    }

}

res/layout/main.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:background="@drawable/white"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <TextView        

        style="@style/DavidStyleText1"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:text="@string/hello" />

    <TextView

        style="@style/DavidStyleText2"

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:text="@string/hidi" />

    

</LinearLayout>

res/values/styles.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <style name="DavidStyleText1">

        <item name="android:textSize">18sp</item>

        <item name="android:textColor">#EC9237</item>

    </style>

    <style name="DavidStyleText2">

        <item name="android:textSize">14sp</item>

        <item name="android:textColor">#FF7F7C</item>

        <item name="android:fromAlpha">0.0</item>

        <item name="android:toAlpha">0.0</item>

    </style>

</resources>

res/values/strings.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="hello">使用Drawable背景色的戴维文本</string>

    <string name="hidi">使用graphics.Color设置文本颜色</string>

    <string name="app_name">Helloworld</string>

    <drawable name="white">#FFFFFF</drawable>

</resources>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: