设置文本的内容
<TextView android:id="@+id/tv_hello" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="你好,世界" />
java代码
// 获取名为tv_hello的文本视图 TextView tv_hello = findViewById(R.id.tv_hello); tv_hello.setText("你好,世界"); // 设置tv_hello的文字内容
使用string.xml引用字符串
<resources> <string name="app_name">chapter03</string> <string name="hello">你好,世界</string> </resources>
使用之后xml引用
<TextView android:id="@+id/tv_hello" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello" />
java引用
// 获取名为tv_hello的文本视图 TextView tv_hello = findViewById(R.id.tv_hello); tv_hello.setText(R.string.hello); // 设置tv_hello的文字内容
设置文本的大小:
java代码
// 从布局文件中获取名叫tv_sp的文本视图 TextView tv_sp = findViewById(R.id.tv_sp); tv_sp.setTextSize(30); // 设置tv_sp的文本大小
XMl页面设置
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:padding="5dp" android:orientation="vertical"> <TextView android:id="@+id/tv_px" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="你好,世界(px大小)" android:textSize="30px" /> <TextView android:id="@+id/tv_dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="你好,世界(dp大小)" android:textSize="30dp" /> <TextView android:id="@+id/tv_sp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="你好,世界(sp大小)" android:textSize="30sp" /> </LinearLayout>
三种大小的符号:
1.px
px是手机屏幕的最小显示单位,它与设备的显示屏有关。一般来说,同样尺寸的屏幕(比如6英寸手机),如果看起来越清晰,则表示像素密度越高,以px计量的分辨率也越大。
2.dp
dp有时也写作dip,指的是与设备无关的显示单位,它只与屏幕的尺寸有关。一般来说,同样尺寸的屏幕以dp计量的分辨率是相同的,比如同样是6英寸手机,无论它由哪个厂家生产,其分辨率换算成dp单位都是一个大小。
3.sp
sp的原理跟dp差不多,但它专门用来设置字体大小。手机在系统设置里可以调整字体的大小(小、标准、大、超大)。设置普通字体时,同数值dp和sp的文字看起来一样大;如果设置为大字体,用dp设置的文字没有变化,用sp设置的文字就变大了。
设置文本颜色:
java页面
// 从布局文件中获取名为tv_code_system的文本视图 TextView tv_code_system = findViewById(R.id.tv_code_system); // 将tv_code_system的文字颜色设置系统自带的绿色 tv_code_system.setTextColor(Color.GREEN); // 从布局文件中获取名为tv_code_six的文本视图 TextView tv_code_six = findViewById(R.id.tv_code_six); // 将tv_code_six的文字颜色设置为透明的绿色,透明就是看不到 tv_code_six.setTextColor(0x00ff00); // 从布局文件中获取名为tv_code_eight的文本视图 TextView tv_code_eight = findViewById(R.id.tv_code_eight); // 将tv_code_eight的文字颜色设置为不透明的绿色,即正常的绿色 tv_code_eight.setTextColor(0xff00ff00);
使用colors.mlx定义颜色
<resources> <color name="colorPrimary">#008577</color> <color name="colorPrimaryDark">#00574B</color> <color name="colorAccent">#D81B60</color> <color name="green">#00ff00</color> </resources>
xml页面引用
<TextView android:id="@+id/tv_values" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="资源文件引用六位文字颜色" android:textColor="@color/green" android:textSize="17sp" />
java设置
// 从布局文件中获取名叫tv_code_background的文本视图 TextView tv_code_background = findViewById(R.id.tv_code_background); // 将tv_code_background的背景颜色设置为绿色 tv_code_background.setBackgroundColor(Color.GREEN); // 在代码中定义的色值 tv_code_background.setBackgroundResource(R.color.green); // 颜色来源于资源文件
浙公网安备 33010602011771号