TextView显示数字而不是字符

时间:2016-08-01 07:33:19

标签: android textview

我想在TextView中打印ŒHI5¹。所以我简单地写了:

tv.setText("Welcome to " + R.string.app_name)

其中 R.string.app_name <string name="app_name"><b>ŒHI 5¹</b></string>

但奇怪的是 textview显示了一个数字

号码是: 2131230755

我不知道为什么会这样。请帮助。

3 个答案:

答案 0 :(得分:3)

使用getString(R.string.app_name)

getResources().getString(R.string.app_name);

R.string.app_name只是一个很长的数字,用于识别该资源。 string + long的结果就是连接到该字符串的长度。所以你需要获得与该标识符对应的字符串。

实际上每个资源(布局,可绘制,数组,字符串)都有一个标识符,这些标识符放在R文件中。布局标识符在称为布局的内部类,字符串中的字符串等中保存在一起。

答案 1 :(得分:1)

使用:

getString(R.string.app_name);

或者如果您不参加活动

mContext.getResource().getString(R.string.app_name);

答案 2 :(得分:1)

根据您的要求,您无法直接致电 R.string

通过getResource().getString

  

返回与特定资源ID

关联的字符串值

最后

getResource().getString(R.string.your_string);