Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 開發入門 >> 用戶人機界面-->3.1 更改與顯示文字標簽(TextView標簽的使用)

用戶人機界面-->3.1 更改與顯示文字標簽(TextView標簽的使用)

編輯:開發入門

范例說明

在本章人機界面一開始,則延續Hello World的氣勢,與TextView文字標簽進行第一次接觸.在次范例中,將會在Layout中創建TextVIEw對象,並學會定義res/values/strings.XML裡的字符串常數,最後通過TextView的setText方法,在預加載程序之初,更改TextVIEw文字.

范例程序

res/layout/main.XML

以android:id命名TextView的ID為myTextVIEw01;而先前的版本寫法與1.0有所不同,請特別留意.
<?XML version="1.0" encoding="utf-8"?>
<AbsoluteLayout 
android:id="@+id/widget35"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
XMLns:android="http://schemas.android.com/apk/res/android"
>
<TextVIEw 
android:id="@+id/myTextVIEw01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/str_1"
android:layout_x="61px"
android:layout_y="69px"
>
</TextVIEw>
</AbsoluteLayout>

res/values/strings.XML

<?XML version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello World, Demo03_01!</string>
    <string name="app_name">Demo03_01</string>
    <string name="str_1">我是存放在strings.XML裡的"字符串1"</string>
</resources>

src/org.demo03_01/Demo03_01.Java

主程序示范以setText方法,輸出String類型的字符串變量
.

package org.demo03_01;

import android.app.Activity;
import android.os.Bundle;
//必須引用widget.TextView才能在程序中聲明TextVIEw對象
import android.widget.TextVIEw;

public class Demo03_01 extends Activity {
        //必須引用widget.TextView才能在程序中聲明TextVIEw對象
        private TextView mTextVIEw01;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //加載main.XML Layout,此時myTextVIEw01:text為str_1
        setContentVIEw(R.layout.main);
        mTextView01 = (TextView) findViewById(R.id.myTextVIEw01);
        String str_2 = "歡迎來到android的TextVIEw世界...";
        mTextVIEw01.setText(str_2);
        
    }
}

擴展學習

TextVIEw 裡的 setText方法支持以下多態構造方法:
public final void setText(CharSequence text)
public final void setText(int resid)
public void setText(CharSequence text,TextVIEw.BufferType type)
public final void setText(int resid,TextVIEw.BuffType type)
public final void setText(char[] text,int start,int len)

此外,以最後setText(char[] text,int start,int len)為例子,第一個參數為char數組作為輸出依據,第二個參數為從哪一個元素索引開始選取,第三個參數則為要取出多少個元素,請看以下的例子:

char char_1[] = new char[5];
char_1[0] = 'D';
char_1[1] = 'a';
char_1[2] = 'v';
char_1[3] = 'i';
char_1[4] = 'd';
mTextVIEw01.setText(char_1,1,3);

如上述程序所示:輸出的結果是"avi",因為從第1個元素索引開始,共取3個元素;最後則要提醒你,TextView.setTextVIEw不支持Html TAG 的輸出.所以即便寫成這樣:mTextView01.setTextVIEw("<a href=\"http://shop.teac.idv.tw/MyBlog/\">戴維的博客</a>");



實際輸出時,也就是純文本而已,並不會作HTML TAG的轉換.但若撇開Html TAG之外(如"<"開頭的標記),在TextVIEw裡加上了android:autoLink="all",那麼正文中若有網址(http://),則可以顯示出來,以下的范例就交給你自己實現看看.

<TextVIEw XMLns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoLink="all"
android:text="請訪問博客: http://shop.teac.idv.tw/MyBlog/"
/>

參照Google android SDK開發范例大全第2版學習並順便手工制作分享給要學習的朋友們,如有錯誤的地方還請大家指出,謝謝.
未完待續

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved