Android開發教學
Android 開發環境配置
Android 架構
Android 應用組件
Android Hello World示例
Android 資源組織和訪問
Android Activity
Android Service
Android廣播接收器
Android內容提供者
Android碎片/片段
Android Intent過濾器
Android UI佈局
Android LinearLayout
Android RelativeLayout
Android TableLayout
Android AbsoluteLayout
Android FrameLayout
Android ListView
Android GridView
Android UI控件
Android TextView
Android EditText
Android AutoCompleteTextView
Android Button
Android ImageButton
Android CheckBox
Android ToggleButton
Android RadioButton
Android RadioGroup
Android事件處理
Android樣式和主題
Android樣式示例
Android主題示例
Android自定義組件
Android拖放
Android通知
Android基於位置服務
Android發送電子郵件
Android發送短信/SMS
Android撥打電話
發佈Android應用
ArrayAdapter
SimpleCursorAdapter
Android ProgressDialog
Android Spinner
使用活動代碼自定義Android組件
使用佈局文件自定義Android組件
Android自定義組件及屬性
Android Alertdialog(警告對話框)
Android Animation(動畫)實例
Android音頻捕獲(錄音)
Android音頻管理器實例
Android AutoCompleteTextView(自動完成)實例
Android最佳實踐
Android Bluetooth(藍牙)實例
Android Camera(攝像頭)
Android Clipboard(複製/剪貼板)
Android自定義字體
Android數據備份
Android Gestures/手勢
Android圖片效果
Android圖片切換
Android內部存儲
Android JetPlayer實例
Android JSON解析器
Android加載Spinner
Android本地化
Android登錄實例
Android MediaPlayer(多媒體播放)

Android TextView

TextView顯示文本給用戶,並允許他們選擇編輯。TextView是一個完整的文本編輯器,但是其基本類配置爲不允許編輯。

TextView屬性

是TextView控件相關的重要屬性。可以查看Android官方文檔的屬性和相關方法的完整列表,可以用它來改變這些屬性運行時。

屬性

描述

android:id

這是唯一地標識控件的ID。

android:capitalize

如果設置,指定該TextView中有一個文本輸入法會自動利用什麼類型的用戶。

  • 不要自動大寫任何東西 - 0

  • 大寫每句的第一個字 - 1

  • 大寫每個單詞的第一個字母 - 2

  • 大寫每一個字符 - 3

android:cursorVisible

使光標可見(默認值)或不可見。默認爲false。

android:editable

如果設置爲true,指定TextView的一個輸入法。

android:fontFamily

字體系列(由字符串命名)的文本。

android:gravity

指定如何排列由視圖的x和/或y軸的文本時,該文本比視圖小。

android:hint

提示文本顯示文本爲空。

android:inputType

數據的類型被放置在一個文本字段。手機,日期,時間,號碼,密碼等。

android:maxHeight

使得TextView至多到像素高。

android:maxWidth

使得TextView至多到多少像素寬。

android:minHeight

使得TextView中至少有多少像素高。

android:minWidth

使得TextView至少有多少像素寬。

android:password

字段的字符是否顯示爲密碼的點,而不是它們本身。可能的值是「true」或「false」。

android:phoneNumber

如果設置,則指定TextView具有一個電話號碼的輸入法。可能的值是「true」或「false」。

android:text

要顯示的文字。

android:textAllCaps

目前在所有大寫的文本。可能的值是「true」或「false」。

android:textColor

文本顏色。可以是一個顏色值,在形式"#rgb", "#argb", "#rrggbb", 和 "#aarrggbb".

android:textColorHighlight

顏色選擇的文本亮點。

android:textColorHint

顏色的提示文字。可以是一個顏色值,在形式"#rgb", "#argb", "#rrggbb", 或 "#aarrggbb".

android:textIsSelectable

表示可被選擇的非可編輯的文本的內容。可能的值是「true」或「false」。

android:textSize

大小的文字。文字推薦尺寸類型是「sp」的比例像素(例如:15sp)。

android:textStyle

樣式(粗體,斜體,BOLDITALIC)的文本。可以使用以上以「|」分隔。

  • normal - 0

  • bold - 1

  • italic - 2

android:typeface

字體(正常,SANS,襯線字體,等寬)的文本。可以使用以上以「|」分隔值。

  • normal - 0

  • sans - 1

  • serif - 2

  • monospace - 3

例子

這個例子將通過簡單的步驟顯示瞭如何創建自己的Android應用程序使用線性佈局和TextView。

步驟

描述

1

使用Eclipse IDE創建Android應用程序,並將其命名爲TextEdit在一個包com.yiibai.guidemo下。

2

修改src/com.yiibai.guidemo/MainActivity.java文件,添加一個click事件。

2

修改res/layout/activity_main.xml文件的默認內容包括Android的UI控件。

3

在res/values/strings.xml文件中定義所需的常量

4

運行該應用程序啓動Android模擬器並驗證應用程序所運行的結果。

以下是主活動文件src/com.yiibai.guidemo/MainActivity.java的內容。這個文件可以包括每個生命週期的基本方法。

package com.yiibai.guidemo; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.TextView; import android.widget.Toast; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //--- text view--- TextView txtView = (TextView) findViewById(R.id.text_id); final String Label = txtView.getText().toString(); txtView.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Toast.makeText(getApplicationContext(), "You have clicked the Label : " + Label, Toast.LENGTH_LONG).show(); } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; } }

下面是 res/layout/activity_main.xml 文件的內容: 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/text_id" android:layout_width="wrap_content" android:layout_height="wrap_content" android:capitalize="characters" android:text="@string/hello_world" />

下面將 res/values/strings.xml 的內容中定義兩個新的常量: 

<string name="app_name">GUIDemo <string name="action_settings">Settings <string name="hello_world">Hello world!

以下是AndroidManifest.xml 文件的默認內容:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.yiibai.guidemo" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.yiibai.guidemo.MainActivity" android:label="@string/app_name" > <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" />

我們嘗試運行 TextEdit 應用程序。 Eclipse AVD安裝的應用程序,並啓動它,如果一切設置和應用都沒有問題,它會顯示以下模擬器窗口: 

Android

現在,讓我們點擊標籤「Hello World」,它會給下面的畫面:

Android

練習:

建議TextView不同屬性在佈局XML文件,以及在編程時有不同的外觀和感覺 TextView,嘗試上面的例子。儘量使其可編輯,更改字體顏色,字體,寬度,textSize等看看它的結果。也可以試試上面的例子,將多個TextView控件在一個acitivity。