设置文本的内容
设置文本内容的两种方式如下:
1.XML文件设置文本内容
这种设置的方式十分直观简洁,很像html的写法,只需要通过属性android:text="你好,世界!"即可设置文本内容,具体代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<TextView
android:id="@+id/tv_helloworld"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="你好,世界!"/>
</LinearLayout>
这里值得一提的是, android:text="你好,世界!",可以由src/main/res/value/strings.xml文件中去设置好一个@string资源,代码案例如下:
<string name="hello">你好,世界!</string>
这样做的好处是,当项目足够大时,整体项目的工程量是巨大的,为了简化我们的工作量,我们可以把常见的字符串,写入 @string资源,在使用时直接调用即可,具体案例如下:
android:text="@string/hello"
这两种表达方式生成的效果一致。
2.Java代码调用文本视图对象设置文本内容
创建一个Java类,在里面创建一个文本对象,然后调用setText方法设置文本,具体的代码如下:
package com.sut.myapplication;
import android.os.Bundle;
import android.widget.TextView;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
public class TextViewActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_view);
TextView textView = findViewById(R.id.tv_helloworld);
textView.setText(R.string.hello);
}
}
其中setContentView()方法表示指定当前活动布局为目标的xml,然后创建一个文本对象,制定内容id,然后引入之前定义好的@string资源(这里也可以直接在括号里写入“你好,世界!”),这种方式所产生的效果与上一种方式一致。