Text View (android.widget.TextView) 控制項可以說是最基本的控制項, 其主要目的就是用於顯示文字.
主要功能介紹 :
這個程式簡單而直覺, 在主畫面點選Button 後, 呈現的示範畫面直接以兩個 TextView 控制項顯示文字內容, 唯一要注意的是在 layout 中配置了不同的顏色, 在程式中也可以使用setText() 方法設定不同的文字內容. 另外由類別架構可以得知 TextView 控制項是繼承自 android.view.View. 在視窗應用程式的世界中, 多數的控制項都是由一個基本的顯示控制項 (這裡是View) 繼承而來, 表面看起來 TextView 要比 View 小的多, 但是透過設定可以很輕易的把 TextView 設定為填滿整個畫面, 而許多的函式也是直接繼承 View 而來.
範例代碼 :
- main.xml 內容 :
- "1.0" encoding="utf-8"?>
"http://schemas.android.com/apk/res/android" - android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- android:id="@+id/btn_Text_View"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="顯示文字控制項">
- ControlItemsDemo.java 代碼 : 主程式的 Activity
- package john.controlitems.demo;
- import android.app.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- public class ControlItemsDemo extends Activity {
- private Button btn_Button;
- private Button btn_CheckBox;
- private Button btn_TextView;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- findViews();
- addListener();
- }
- protected void findViews(){
- btn_Button = (Button)findViewById(R.id.btn_Button);
- btn_CheckBox = (Button)findViewById(R.id.btn_Text_Check_Box);
- // 使用 findViewById() 傳入控制項 id 去獲取控制項實體
- btn_TextView = (Button)findViewById(R.id.btn_Text_View);
- }
- protected void addListener(){
- // 定義 Button 的監聽, 並於按下按鈕後啟動 TextView 範例的 Activity
- btn_TextView.setOnClickListener(new Button.OnClickListener(){
- @Override
- public void onClick(View v) {
- Intent intent_TextView = new Intent();
- intent_TextView.setClass(ControlItemsDemo.this, SampleTextView.class);
- startActivity(intent_TextView);
- }
- });
- btn_Button.setOnClickListener(new Button.OnClickListener(){
- @Override
- public void onClick(View v) {
- Intent intent_CheckBox = new Intent();
- intent_CheckBox.setClass(ControlItemsDemo.this, SampleButton.class);
- startActivity(intent_CheckBox);
- }
- });
- btn_CheckBox.setOnClickListener(new Button.OnClickListener(){
- @Override
- public void onClick(View v) {
- Intent intent_CheckBox = new Intent();
- intent_CheckBox.setClass(ControlItemsDemo.this, SampleCheckBox.class);
- startActivity(intent_CheckBox);
- }
- });
- }
- }
- sample_text_view.xml : TextView Activity 的 xml 描述檔
- "1.0" encoding="utf-8"?>
"http://schemas.android.com/apk/res/android" - android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- android:id="@+id/txv_Pre"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:textSize="15sp"
- android:textColor="@color/black"
- android:padding="10dip"
- android:background="@color/red"
- android:text="改變 TextView 內容">
- android:id="@+id/txv_Cur"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:textSize="15sp"
- android:textColor="@color/white"
- android:padding="10dip"
- android:background="@color/blue">
- SampleTextView.java : Text View 的 Activity 代碼
- package john.controlitems.demo;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.TextView;
- public class SampleTextView extends Activity {
- private TextView txv_Pre;
- private TextView txv_Cur;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.sample_text_view);
- findViews();
- addListener();
- }
- protected void findViews(){
- txv_Pre = (TextView)findViewById(R.id.txv_Pre);
- txv_Cur = (TextView)findViewById(R.id.txv_Cur);
- /*呼叫 TextView 控制項的 setText() 方法將文字分別設定於其上*/
- txv_Pre.setText("內容再變更前為:\n"+txv_Pre.getText());
- txv_Cur.setText("內容在變更後為:\nAndroid 實在太屌拉!");
- }
- protected void addListener(){}
- }
- values/colors.xml : 顏色描述檔
- "1.0" encoding="utf-8"?>
"black" >#000000"blue" >#0000FF"red" >#FF0000"white" >#FFFFFF
- AndroidManifest.xml : 在此註冊 TextView 的 Activity
- "1.0" encoding="utf-8"?>
"http://schemas.android.com/apk/res/android" - package="john.controlitems.demo"
- android:versionCode="1"
- android:versionName="1.0">
"@drawable/icon" android:label="@string/app_name">".ControlItemsDemo" - android:label="@string/app_name">
"android.intent.action.MAIN" />"android.intent.category.LAUNCHER" />".SampleCheckBox" >".SampleButton" >".SampleTextView" >
顯示範例結果 :
Step1: 在主程式開啟後點擊按鈕 "顯示文字控制項" 進入 Text View Demo 的 Activity
This message was edited 3 times. Last update was at 07/10/2010 18:58:54
沒有留言:
張貼留言