You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MainActivity.xml的TextView中调用Strings.xml里的字符串资源

在TextView中调用Strings.xml字符串资源的方法

你可以通过两种常用方式调用Strings.xml里定义的字符串资源:

1. 在XML布局文件中直接引用

直接在TextView的android:text属性里使用@string/资源名称即可,示例代码如下:

<!-- 显示姓名的TextView -->
<TextView
    android:id="@+id/tv_name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/Std_Name" />

<!-- 显示电话的TextView -->
<TextView
    android:id="@+id/tv_phone"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/Std_Phone" />

2. 在代码中动态设置

Java 代码示例

// 获取TextView实例
TextView tvName = findViewById(R.id.tv_name);
TextView tvPhone = findViewById(R.id.tv_phone);

// 设置字符串资源
tvName.setText(getResources().getString(R.string.Std_Name));
tvPhone.setText(getResources().getString(R.string.Std_Phone));

Kotlin 代码示例

如果使用传统方式:

val tvName = findViewById<TextView>(R.id.tv_name)
val tvPhone = findViewById<TextView>(R.id.tv_phone)

tvName.text = getString(R.string.Std_Name)
tvPhone.text = getString(R.string.Std_Phone)

如果使用ViewBinding(推荐,简化代码):

// 假设你的布局文件是activity_main.xml,生成的Binding类为ActivityMainBinding
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)

binding.tvName.text = getString(R.string.Std_Name)
binding.tvPhone.text = getString(R.string.Std_Phone)

这种通过资源ID调用字符串的方式,能方便后续做多语言适配,也避免了硬编码字符串带来的维护问题。

内容的提问来源于stack exchange,提问作者Muhammad Abdullah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 19:57:39