【說明】 TextView是用來顯示文本的組件。以下介紹的是XML代碼中的屬性,在java代碼中同樣可通過 ”組件名.setXXX()方法設置。如,tv.setTextColor();
【屬性一】
android:textColor="#000"
表示文字的顏色。
【提示】顏色可以隨便寫一個“#000”形式的屬性值,再通過點擊左邊顯示行號旁邊的顏色顯示方塊,彈出來顏色選擇器對顏色進行選擇。
當設置的顏色為系統提供的Color資源內的顏色時,如“@color/colorAccent”,將不能通過此方法改變顏色值。(點擊無效)
【屬性二】
android:textSize="20sp"
表示文字的大小。建議字體單位為sp,默認情況下,1sp和1dp的大小是一樣的。【提示】在Android手機中是可以通過系統設置調整字體的大小,sp會隨着手機設置字體的大小變化而變化,而dp不會變。(某些特殊的情況下會用dp作為單位表示字體大小
【屬性三】
android:gravity="center"
表示TextView中的文字相對於TextView的對齊方式。(在gravity和layout_gravity區別的隨筆中有詳細介紹http://www.cnblogs.com/xqz0618/p/gravity.html)
【屬性四】
android:background="#ccc"
表示TextView的背景顏色。(對於顏色有關可以參考前期隨筆:Android顏色配置器 http://www.cnblogs.com/xqz0618/p/8882514.html)
【屬性五】為TextView中的文字設置鏈接
android:autoLink="web"
表示自動識別文本中的鏈接。其屬性值有
all表示匹配所有
- 代碼
1 <TextView 2 android:layout_width="wrap_content"
3 android:layout_height="wrap_content"
4 android:text="http://www.baidu.com"
5 android:background="#ccc"
6 android:gravity="center"
7 android:textColor="@color/colorAccent"
8 android:textSize="20sp"
9 android:autoLink="web"/>
- 效果
- 提示
①文本中要寫鏈接的完整路徑“http:···“
②文字中除了鏈接的地址也可以加上其他文字。
③文本中不能出現”&“符號會提示Unescaped & or nonterminated character/entity reference
(具體也不是很懂,大概是因為很多特殊符號都是用”&“開頭表示的吧,如”&)
【屬性六】TextView內容只顯示單行。對於部分顯示···
android:singleLine="true"
【屬性值】true或者false。如果設置為true為單行輸入。
- 代碼
1 <TextView 2 android:id="@+id/tv"
3 android:layout_width="wrap_content"
4 android:layout_height="wrap_content"
5 android:textSize="20sp"
6 android:text="三月,醉一場青春的流年。慢步在三月的春光里,走走停停,看花開嫣然,
看春雨綿綿,感受春風拂面,春天,就是青春的流年。青春,是人生中最美的風景。青春,是一場花開的遇見;青春,是一場痛並快樂着的旅行;
青春,是一場轟轟烈烈的比賽;青春,是一場鮮衣奴馬的爭榮歲月;青春,是一場風花雪月的光陰。"
7 android:singleLine="true"
8 />
- 效果
- 提示
①文字過長建議用資源文件儲存。/res/values/string
②也可以用line,maxLine屬性設置只有單行,但是沒有后面省略號。
【屬性七】行數屬性
android:lines="2" 不管多大都顯示兩行
android:ellipsize="end"
android:maxLines="2" 超過兩行只顯示兩行
android:ellipsize="end"
- 代碼
1 <TextView 2 android:id="@+id/tv"
3 android:layout_width="wrap_content"
4 android:layout_height="wrap_content"
5 android:textSize="20sp"
6 android:text="三月,醉一場青春的流年。慢步在三月的春光里,走走停停,看花開嫣然,看春雨綿綿,感受春風拂面,春天,就是青春的流年。
青春,是人生中最美的風景。青春,是一場花開的遇見;青春,是一場痛並快樂着的旅行;青春,
是一場轟轟烈烈的比賽;青春,是一場鮮衣奴馬的爭榮歲月;青春,是一場風花雪月的光陰。"
7 android:maxLines="2" 8 android:ellipsize="end"/>
- 效果
- 提示
①line和maxLine屬性要結合ellipsize=“end”使用,多的部分用省略號顯示
②ellipsize省略號顯示的位置。start開頭,middle中間(貌似只有end對應多行,其他的針對單行)
【屬性八】省略號顯示屬性
android:ellipsize="middle"
android:lines="1"
- 代碼
1 <TextView 2 android:id="@+id/tv"
3 android:layout_width="match_parent"
4 android:layout_height="wrap_content"
5 android:textSize="20sp"
6 android:text="三月,醉一場青春的流年。慢步在三月的春光里,走走停停,看花開嫣然,看春雨綿綿,感受春風拂面,
春天,就是青春的流年。青春,是人生中最美的風景。青春,是一場花開的遇見;
青春,是一場痛並快樂着的旅行;青春,是一場轟轟烈烈的比賽;
青春,是一場鮮衣奴馬的爭榮歲月;青春,是一場風花雪月的光陰。"
7 android:maxLines="1"
8 android:ellipsize="middle"/>
- 效果
- 提示
設置middle值時,只針對單行有效,如果設置多行,將沒有效果(親測)
【屬性九】 文本可選擇復制
android:textIsSelectable="true"
【屬性值】true或者false。如果設置為true為可選擇復制,默認為false。
【方法一】設置自定義字體文本
①添加assets文件夾,把字體文件放到文件夾中,在Project視圖下查看
②java代碼設置字體
把字體文件放進assets中的fonts文件夾中
定義一個Typeface,后面把assets下面的完整路徑填進去