【android編程】 第四講-Android基本控件

Android 基本控件

文本框 TextView

基本屬性

id 設置一個組件id,通過findViewById()的方法獲取到該對象,然後進行相關設置
layout_width 組件寬度
layout_height 組件高度
text 設置文本內容
background 背景顏色(或背景圖片)
textColor 設置字體顏色
textStyle 設置字體樣式
textSize 字體大小
gravity 內容的對齊方向
autoLink autoLink的屬性可以將符合指定格式的文本轉換爲可單擊的超鏈接形式
drawableTop TextView上部出現一個圖片

1、對於layout_width和layout_height:

(1)、wrap_content:控件的大小根據裏面的內容大小而定,內容越小,則空間越小,反之亦然。

(2)、match_parent:控件大小填滿整個父容器:

(3)、fill_parent:作用和效果同上,不過新版本不怎麼使用這個了。

2、對於text:

將字符串放置在value文件夾的strings.xml文件下:

在activity_main.xml中使用@string/來調用這個字符串資源,“”號代表string定義的name:

(1)、textColor:字體顏色,將顏色配置在colors.xml文件中:

activity_main.xml中,用@color/*進行調用:

(2)、textSize:設置字體大小。

擴展:設置大小的單位(字體,也包括控件大小)

dp: 設備獨立像素,不同設備有不同的顯示效果,這個和設備硬件有關,不依賴像素。

px: 像素,在 不同設備顯示的效果相同。

pt: 標準的長度單位,簡單易用,單位換算1pt=1/72英寸。

sp: 用於字體顯示。

(3)、textStyle:三種選擇。

normal(無任何效果,常規):

bold(文字加粗):

italic(字體傾斜):

(4)、gravity:設置對齊方式:

常用的對齊方式有:

center: 居中對齊,位於容器橫向和縱向的中央
left: 向左對齊,位於容器左邊
right: 向右對齊,位於容器右邊
bottom: 向底對齊,位於容器底部
top: 向頂對齊,位於容器頂部
center_vertical: 位置置於容器的縱向中央部分
center_horizontal: 位置置於容器的橫向中央部分
fill_vertical: 縱向延伸填滿容器
fiil_horizontal: 橫向延伸填滿容器
fiil: 縱向和橫向延伸填滿容器

使用兩個值疊加定位,用“|”進行分割,、

(5)、background:背景顏色或背景圖片

(6)、shadow:文字陰影效果

shadowColor 設置陰影顏色
shadowRadius 設置陰影模糊程度
shadowDx 設置陰影在水平方向的偏移
shadowDy 設置陰影在豎直方向的偏移

shadowColor屬性用來設置陰影顏色,顏色可以再colors.xml中預先配置;

shadowRadius屬性設置模糊程度,數值越大,陰影就越模糊;

shadowDx屬性設置在水平方向上的偏移量,數值越大,則陰影越向右移動;

shadowDy屬性設置在垂直方向上的偏移量,數值越大,則陰影越向下移動。

(7)、autoLink:鏈接類型

none:表示不進行任何匹配,默認。

web:表示匹配Web Url:http://www.baidu.com會成爲可單擊跳轉的超鏈接。

email:表示匹配郵件地址:郵件地址爲[email protected]會成爲可單擊的超鏈接。

phone:表示匹配電話號碼:點擊號碼10086會跳到撥號界面。

map:表示匹配地圖地址。

all:表示將會匹配web、email、phone、map所有類型。

android:textColorLink可以修改鏈接字體的顏色。

其他屬性

1、 android:autoLink 設置是否當文本爲URL鏈接/email/電話號碼/map時,文本顯示爲可點擊的鏈接。可選值(none/web/email/phone/map/all)
2、 android:autoText 如果設置,將自動執行輸入值的拼寫糾正。此處無效果,在顯示輸入法並輸入的時候起作用。
3、 android:bufferType 指定getText()方式取得的文本類別。選項editable 類似於StringBuilder可追加字符,

也就是說getText後可調用append方法設置文本內容。spannable 則可在給定的字符區域使用樣式,參見這裏1、這裏2。

4、 android:capitalize 設置英文字母大寫類型。此處無效果,需要彈出輸入法才能看得到,參見EditView此屬性說明。
5、 android:cursorVisible 設定光標爲顯示/隱藏,默認顯示。
6、 android:digits 設置允許輸入哪些字符。如“1234567890.±*/% ()”
7、 android:drawableBottom 在text的下方輸出一個drawable,如圖片。如果指定一個顏色的話會把text的背景設爲該顏色,並且同時和background使用時覆蓋後者。
8、 android:drawableLeft 在text的左邊輸出一個drawable,如圖片。
9、 android:drawablePadding 設置text與drawable(圖片)的間隔,與drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可設置爲負數,單獨使用沒有效果。
10、 android:drawableRight 在text的右邊輸出一個drawable。
11、 android:drawableTop 在text的正上方輸出一個drawable。
12、 android:editable 設置是否可編輯。
13、 android:editorExtras 設置文本的額外的輸入數據。
14、 android:ellipsize 設置當文字過長時,該控件該如何顯示。有如下值設置:”start”—?省略號顯示在開頭;”end”——省略號顯示在結尾;”middle”—-省略號顯示在中間;”marquee” ——以跑馬燈的方式顯示(動畫橫向移動)
15、 android:freezesText 設置保存文本的內容以及光標的位置。
16、 android:gravity 設置文本位置,如設置成“center”,文本將居中顯示。
17、 android:hintText 爲空時顯示的文字提示信息,可通過textColorHint設置提示信息的顏色。此屬性在EditView中使用,但是這裏也可以用。
18、 android:imeOptions 附加功能,設置右下角IME動作與編輯框相關的動作,如actionDone右下角將顯示一個“完成”,而不設置默認是一個回車符號。
19、 android:imeActionId 設置IME動作ID。
20、 android:imeActionLabel 設置IME動作標籤。
21、 android:includeFontPadding 設置文本是否包含頂部和底部額外空白,默認爲true。
22、 android:inputMethod 爲文本指定輸入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,但是這裏報錯找不到。
23、 android:inputType 設置文本的類型,用於幫助輸入法顯示合適的鍵盤類型。在EditView中再詳細說明,這裏無效果。
24、 android:linksClickable 設置鏈接是否點擊連接,即使設置了autoLink。
25、 android:marqueeRepeatLimit 在ellipsize指定marquee的情況下,設置重複滾動的次數,當設置爲marquee_forever時表示無限次。
26、 android:ems 設置TextView的寬度爲N個字符的寬度。這裏測試爲一個漢字字符寬度
27、 android:maxEms 設置TextView的寬度爲最長爲N個字符的寬度。與ems同時使用時覆蓋ems選項。
28、 android:minEms 設置TextView的寬度爲最短爲N個字符的寬度。與ems同時使用時覆蓋ems選項。
29、 android:maxLength 限制顯示的文本長度,超出部分不顯示。
30、 android:lines 設置文本的行數,設置兩行就顯示兩行,即使第二行沒有數據。
31、 android:maxLines 設置文本的最大顯示行數,與width或者layout_width結合使用,超出部分自動換行,超出行數將不顯示。
32、 android:minLines 設置文本的最小行數,與lines類似。
33、 android:lineSpacingExtra 設置行間距。
34、 android:lineSpacingMultiplier 設置行間距的倍數。如”1.2”
35、 android:numeric 如果被設置,該TextView有一個數字輸入法。此處無用,設置後唯一效果是TextView有點擊效果,此屬性在EdtiView將詳細說明。
36、 android:password 以小點”.”顯示文本
37、 android:phoneNumber 設置爲電話號碼的輸入方式。
38、 android:privateImeOptions 設置輸入法選項,此處無用,在EditText將進一步討論。
39、 android:scrollHorizontally 設置文本超出TextView的寬度的情況下,是否出現橫拉條。
40、 android:selectAllOnFocus 如果文本是可選擇的,讓他獲取焦點而不是將光標移動爲文本的開始位置或者末尾位置。TextView中設置後無效果。
41、 android:shadowColor 指定文本陰影的顏色,需要與shadowRadius一起使用。
42、 android:shadowDx 設置陰影橫向座標開始位置。
43、 android:shadowDy 設置陰影縱向座標開始位置。
44、 android:shadowRadius 設置陰影的半徑。設置爲0.1就變成字體的顏色了,一般設置爲3.0的效果比較好。
45、 android:singleLine 設置單行顯示。如果和layout_width一起使用,當文本不能全部顯示時,後面用“…”來表示。如android:text="test_ singleLine "android:singleLine=“true” android:layout_width="20dp"將只顯示“t…”。如果不設置singleLine或者設置爲false,文本將自動換行
46、 android:text 設置顯示文本.
47、 android:textAppearance 設置文字外觀。如“?android:attr/textAppearanceLargeInverse”這裏引用的是系統自帶的一個外觀,?表示系統是否有這種外觀,否則使用默認的外觀。可設置的值如下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse
48、 android:textColor 設置文本顏色
49、 android:textColorHighlight 被選中文字的底色,默認爲藍色
50、 android:textColorHint 設置提示信息文字的顏色,默認爲灰色。與hint一起使用。
51、 android:textColorLink 文字鏈接的顏色.
52、 android:textScaleX 設置文字之間間隔,默認爲1.0f。
53、 android:textSize 設置文字大小,推薦度量單位”sp”,如”15sp”
54、 android:textStyle 設置字形[bold(粗體) 0, italic(斜體) 1, bolditalic(又粗又斜) 2] 可以設置一個或多個,用“
55、 android:typeface 設置文本字體,必須是以下常量值之一:normal 0, sans 1, serif 2, monospace(等寬字體) 3]
56、 android:height 設置文本區域的高度,支持度量單位:px(像素)/dp/sp/in/mm(毫米)
57、 android:maxHeight 設置文本區域的最大高度
58、 android:minHeight 設置文本區域的最小高度
59、 android:width 設置文本區域的寬度,支持度量單位:px(像素)/dp/sp/in/mm(毫米),與layout_width的區別看這裏。
60、 android:maxWidth 設置文本區域的最大寬度
61、 android:minWidth 設置文本區域的最小寬度

編輯框 EditText

EditText et = (EditText)findViewById(R.id.edittext);
String str = et.getText().toString();

android:hint=“請輸入數字!” 設置顯示在空間上的提示信息

android:numeric=“integer” 設置只能輸入整數,如果是小數則是:decimal

android:singleLine=“true” 設置單行輸入,一旦設置爲true,則文字不會自動換行。

android:password=“true” 設置只能輸入密碼

android:textColor = “#ff8c00” 字體顏色

android:textStyle=“bold” 字體,bold, italic, bolditalic

android:textSize=“20dip” 大小

android:capitalize = “characters” 以大寫字母寫

android:textAlign=“center” EditText沒有這個屬性,但TextView有,居中>android:textColorHighlight="#cccccc"

被選中文字的底色,默認爲藍色

android:textColorHint="#ffff00" 設置提示信息文字的顏色,默認爲灰色

android:textScaleX=“1.5” 控制字與字之間的間距

android:typeface=“monospace” 字型,normal, sans, serif, monospace

android:background="@null" 背景,這裏沒有,指透明

android:layout_weight=“1” 權重,控制控件之間的地位,在控制控件顯示的大小時蠻有用的。

android:textAppearance="?android:attr/textAppearanceLargeInverse" 文字外觀

android:layout_gravity=“center_vertical” 設置控件顯示的位置:默認top,這裏居中顯示

bottomandroid:gray=“top” 多行中指針在第一行第一位置

et.setSelection(et.length()); 調整光標到最後一行

android:autoText 自動拼寫幫助

android:capitalize 首字母大寫

android:digits 設置只接受某些數字

android:singleLine 是否單行或者多行,回車是離開文本框還是文本框增加新行

android:numeric 只接受數字

android:phoneNumber 輸入電話號碼

android:editable 是否可編輯

android:autoLink=”all” 設置文本超鏈接樣式當點擊網址時,跳向該網址

android:textAppearance="?android:attr/textAppearanceLargeInverse" 文字外觀,這裏引用的系統自帶的一個外觀,?表示系統是否有這種外觀,否則使用默認的外觀,可設置的值如下:
textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse。

android:autoLink 設置是否當文本爲URL鏈接/email/電話號碼/map時,文本顯示爲可點擊的鏈接。可選值(none/web/email/phone/map/all)

android:autoText 如果設置,將自動執行輸入值的拼寫糾正。此處無效果,在顯示輸入法並輸入的時候起作用。

android:bufferType 指定getText()方式取得的文本類別。選項editable 類似於StringBuilder可追加字符,也就是說getText後可調用append方法設置文本內容。spannable 則可在給定的字符區域使用樣式。

android:capitalize 設置英文字母大寫類型。此處無效果,需要彈出輸入法才能看得到。

android:cursorVisible 設定光標爲顯示/隱藏,默認顯示。

android:digits 設置允許輸入哪些字符。如“1234567890.±*/% ()”

android:drawableBottom 在text的下方輸出一個drawable,如圖片。如果指定一個顏色的話會把text的背景設爲該顏色,並且同時和background使用時覆蓋後者。

android:drawableLeft 在text的左邊輸出一個drawable,如圖片。

android:drawablePadding 設置text與drawable(圖片)的間隔,與drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可設置爲負數,單獨使用沒有效果。

android:drawableRight 在text的右邊輸出一個drawable,如圖片。

android:drawableTop 在text的正上方輸出一個drawable,如圖片。

android:ellipsize 設置當文字過長時,該控件該如何顯示。有如下值設置:
”start”—?省略號顯示在開頭;
”end”——省略號顯示在結尾;
”middle”—-省略號顯示在中間;
”marquee” ——以跑馬燈的方式顯示(動畫橫向移動);

android:freezesText 設置保存文本的內容以及光標的位置。

android:gravity 設置文本位置,如設置成“center”,文本將居中顯示。

android:hintText 爲空時顯示的文字提示信息,可通過textColorHint設置提示信息的顏色。此屬性在EditView中使用,但是這裏也可以用。

android:imeOptions 附加功能,設置右下角IME動作與編輯框相關的動作,如actionDone右下角將顯示一個“完成”,而不設置默認是一個回車符號。

android:imeActionId 設置IME動作ID。

android:imeActionLabel 設置IME動作標籤。

android:includeFontPadding 設置文本是否包含頂部和底部額外空白,默認爲true。

android:inputMethod 爲文本指定輸入法,需要完全限定名(完整的包名)。例如:
com.google.android.inputmethod.pinyin

android:inputType 設置文本的類型,用於幫助輸入法顯示合適的鍵盤類型。

android:linksClickable 設置鏈接是否點擊連接,即使設置了autoLink。

android:marqueeRepeatLimit 在ellipsize指定marquee的情況下,設置重複滾動的次數,當設置爲marquee_forever時表示無限次。

android:ems 設置TextView的寬度爲N個字符的寬度。這裏測試爲一個漢字字符寬度,android:maxEms設置TextView的寬度爲最長爲N個字符的寬度。與ems同時使用時覆蓋ems選項。android:minEms設置TextView的寬度爲最短爲N個字符的寬度。與ems同時使用時覆蓋ems選項。

android:maxLength 限制顯示的文本長度,超出部分不顯示。

android:lines 設置文本的行數,設置兩行就顯示兩行,即使第二行沒有數據。

android:maxLines 設置文本的最大顯示行數,與width或者layout_width結合使用,超出部分自動換行,超出行數將不顯示。

android:minLines 設置文本的最小行數,與lines類似。

android:lineSpacingExtra 設置行間距。

android:lineSpacingMultiplier 設置行間距的倍數。如”1.2”

android:numeric 如果被設置,該TextView有一個數字輸入法。

android:password 以小點”.”顯示文本

android:phoneNumber 設置爲電話號碼的輸入方式。

android:scrollHorizontally 設置文本超出TextView的寬度的情況下,是否出現橫拉條。

android:selectAllOnFocus 如果文本是可選擇的,讓他獲取焦點而不是將光標移動爲文本的開始位置或者末尾位置。

android:shadowColor 指定文本陰影的顏色,需要與shadowRadius一起使用。

android:shadowDx 設置陰影橫向座標開始位置。

android:shadowDy 設置陰影縱向座標開始位置。

android:shadowRadius 設置陰影的半徑。設置爲0.1就變成字體的顏色了,一般設置爲3.0的效果比較好。

android:singleLine 設置單行顯示。如果和layout_width一起使用,當文本不能全部顯示時,後面用“…”來表示。如android:text="test_ singleLine ",android:singleLine=“true” android:layout_width="20dp"將只顯示“t…”。如果不設置singleLine或者設置爲false,文本將自動換行android:shadowDx設置陰影橫向座標開始位置。

android:shadowDy 設置陰影縱向座標開始位置。

android:typeface 設置文本字體,必須是以下常量值之一:normal 0, sans 1, serif 2, monospace(等寬字體) 3]

android:height 設置文本區域的高度,支持度量單位:px(像素)/dp/sp/in/mm(毫米)

android:maxHeight 設置文本區域的最大高度

android:minHeight 設置文本區域的最小高度

android:width 設置文本區域的寬度,支持度量單位:px(像素)/dp/sp/in/mm(毫米),與layout_width的區別看這裏。

android:maxWidth 設置文本區域的最大寬度

android:minWidth 設置文本區域的最小寬度

普通按鈕 Button

Button b = (Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListemer)
{
	public void onClick(View v)
    {
        
    }
}
android:onClick="myclick"
public void myclick(View v)
{

}

圖片按鈕ImageButton

src指定圖片

background= “#0FFF”不顯示立體邊框

單選按鈕 RadioButton

RadioGroup
RadioButton
check="true"默認

單選監聽或提交監聽

複選按鈕 CheckBox

圖像視圖 ImageView

android:adjustViewBounds:
用於設置ImageView是否調整自己的邊界來保持所顯示圖片的長寬比。

android:maxHeight:
設置ImageView的最大高度,需要設置android:adjustViewBounds屬性值爲true,否則不起作用。

android:maxWidth:
設置ImageView的最大寬度,需要設置android:adjustViewBounds屬性值爲true,否則不起作用。

android:scaleType:
(1)matrix(ImageView.ScaleType.MATRIX):使用matrix方式進行縮放
  (2)fitXY(ImageView.ScaleType.FIT_XY):對圖片橫向、縱向獨立縮放,使得該圖片完全適應該ImageView,圖片的縱橫比可能會改變
  (3)fitStart(ImageView.ScaleType.FIT_START):保持縱橫比縮放圖片,直到該圖片能完全顯示在ImageView中,縮放完成後將該圖片放在ImageView的左上角
  (4)fitCenter(ImageView.ScaleType.FIT_CENTER):保持縱橫比縮放圖片,直到該圖片能完全顯示在ImageView中,縮放完成後將圖片放在ImageView的中央
  (5)fitEnd(ImageView.ScaleType.FIT_END):保持縱橫比縮放圖片,直到該圖片能完全顯示在ImageView中,縮放完成後將該圖片放在ImageView的右下角
  (6)center(ImageView.ScaleType.CENTER):把圖片放在ImageView的中間,但不進行任何縮放
  (7)centerCrop(ImageView.ScaleType.CENTER_CROP):保持縱橫比縮放圖片,以使得圖片能完全覆蓋ImageView
  (8)centerInside(ImageView.ScaleType.CENTER_INSIDE):保持縱橫比縮放圖片,以使得ImageView能完全顯示該圖片。

android:src:
用於設置ImageView所顯示的Drawable對象的ID,例如,設置顯示保存在res/drawable目錄下的名稱爲flower.jpg的圖片,可以將屬性值設置爲android:src="@drawable/flower"。

android:tint:
用於爲圖片着色,其屬性值可以是“#rgb”、“#argb”、“#rrggbb”或“#aarrggbb”表示的顏色值。

使用私有對象響應按鈕點擊


題目筆記

在文字超過TextView的範圍時 B

  • A.自動按多行文本顯示
  • B.超出的部分用省略號代替
  • C.程序生成時會提示錯誤
  • D.超出的部分被忽略

Android中的TextView組件 C

  • A.和Java中的Label完全相同
  • B.只能顯示多行文本
  • C.可以顯示單行文本也可以顯示多行文本1.00/1.00
  • D.只能顯示單行文本

Android中的TextView組件 A

  • A.可以顯示圖片和文字1.00/1.00
  • B.可以顯示視頻
  • C.只顯示文字
  • D.只顯示圖片

獲取編輯框的文本的方法是 C

  • A.使用read的方法
  • B.使用findViewById()方法
  • C.使用getText()方法1.00/1.00
  • D.EditText的ID.toString()方法

Android中編輯框 D

  • A.可以輸入富文本
  • B.只能輸入單行文本
  • C.只能輸入多行文本
  • D.可以輸入指定格式的文本

設置TextView中文本的方法是 C

  • A.可以使用TextView控件的ID.Text=文本設置
  • B.可以使用toString()方法設置
  • C.可以在java程序中使用setText()方法設置1.00/1.00
  • D.可以使用findViewById()設置

爲了響應按鈕單擊事件可使用 B

  • A.擡起事件偵聽器
  • B.爲按鈕設置一個單擊事件偵聽器1.00/1.00
  • C.爲按鈕設置一個按下事件偵聽器
  • D.基本事件偵聽器

響應按鈕單擊事件 D

  • A.只能在java文件中設置以有名對象爲參數的偵聽器
  • B.只能在java文件中設置以匿名對象爲參數的偵聽器
  • C.只能使用xml佈局文件中按鈕中Onclick標記實現
  • D.前面三個方法都可以

圖片按鈕將背景設置透明時 B

  • A.無變化
  • B.只是邊框消失1.00/1.00
  • C.圖片按鈕消失
  • D.圖片不可見

android:gravity的含義是 B

  • A.設置重力效果
  • B.設置文本框內文本的對齊方式1.00/1.00
  • C.設置控件在佈局中的對齊方式
  • D.其值只能是true或false
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章