本文執行個體總結了Android TextView字型顏色設定方法。分享給大家供大家參考,具體如下:
對於setTextView(int a)這裡的a是傳進去顏色的值。例如,紅色0xff0000是指0xff0000如何直接傳入R.color.red是沒有辦法設定顏色的,只有通過文章中的第三種方法先拿到資源的顏色值再傳進去。
tv.setTextColor(this.getResources().getColor(R.color.red));
關鍵字: android textview color
TextView的字型設定方法:
1、直接通過設定檔設定
2、在Activity類中進行設定
第一種方式很簡單,用於靜態或初始文字顏色的設定,方法如下:
main.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/white" ><TextView android:id="@+id/tv01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" android:autoLink="all" android:textColor="@color/red" /></LinearLayout>
color.xml
<?xml version="1.0" encoding="utf-8"?><resources> <drawable name="white">#FFFFFF</drawable> <drawable name="dark">#000000</drawable> <drawable name="red">#FF0000</drawable></resources>strings.xml<?xml version="1.0" encoding="utf-8"?><resources> <string name="hello">地址:http://yahaitt.javaeye.com</string> <string name="app_name">丫梨的筆記本</string></resources>
上面將資源部分分成了3個部分,目的是為了清晰,當然你也可以只建一個xml檔案放在res目錄下,而且檔案名稱可以隨便命名。
注意兩個地方:
1、main.xml的TextView標籤中:android:textColor="@color/red"
2、color.xml中:<color name="red">#FF0000</color>
@color指擷取資源檔中(所有res目錄下的xml檔案)的<color>標籤
/red指在標籤下找其name值為red的內容,此時其值為#FF0000
因此,這裡我們還可以這樣做:android:textColor="@drawable/red"
@drawable指擷取資源檔中<drawable>標籤
/red指在標籤下找其name值為red的內容
以此類推,相信你也就知道了如果是在strings.xml中該怎麼做了。
下面看看第二種方式:在Activity類中進行設定
1、先將main.xml改成如下,即去掉android:textColor="@color/red":
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/white" ><TextView android:id="@+id/tv01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" android:autoLink="all" /></LinearLayout>
2、修改Activity的onCreate方法,這裡我的Activity是Study03_01,原始代碼如下:
package yahaitt.study03_01;import android.app.Activity;import android.os.Bundle;public class Study03_01 extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); }}
第一步:獲得文本控制項TextView,取名為tv
第二步:通過TextView的setTextColor方法進行文本顏色的設定,這裡可以有3種方式進行設定:
第1種:tv.setTextColor(android.graphics.Color.RED);//系統內建的顏色類
第2種:tv.setTextColor(0xffff00ff);//0xffff00ff是int類型的資料,分組一下0x|ff|ff00ff,0x是代表顏色整數的標記,ff是表示透明度,ff00ff表示顏色,注意:這裡ffff00ff必須是8個的顏色表示,不接受ff00ff這種6個的顏色表示。
第3種:tv.setTextColor(this.getResources().getColor(R.color.red));//通過獲得資源檔進行設定。根據不同的情況R.color.red也可以是R.string.red或者R.drawable.red,當然前提是需要在相應的設定檔裡做相應的配置,如:
<color name="red">#FF0000</color><drawable name="red">#FF0000</drawable><string name="red">#FF0000</string>
詳細的代碼如下:
package yahaitt.study03_01;import android.app.Activity;import android.content.res.Resources;import android.graphics.Color;import android.os.Bundle;import android.widget.TextView;public class Study03_01 extends Activity { private TextView tv; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); tv = (TextView)this.findViewById(R.id.tv01); //tv.setTextColor(Color.RED); //tv.setTextColor(0xff000000); }}
更多關於Android相關內容感興趣的讀者可查看本站專題:《Android開發入門與進階教程》、《Android通訊方式總結》、《Android基本組件用法總結》、《Android視圖View技巧總結》、《Android布局layout技巧總結》及《Android控制項用法總結》
希望本文所述對大家Android程式設計有所協助。