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