我正在尝试显示我在TextView
中设置的文本。我已经在strings.xml
中分配了一个名称为 operator_mixed
Strings.xml
<string name="operator_mixed">%d %s %d %s %d</string>
并且在我的initialize.java文件中,我尝试引用此字符串,但未显示任何内容。但是,当我尝试不使用任何格式显示文本时,它还是可以的,但是我知道在textview中连接字符串不是可取的
Initialize.java
textview.setText(getString(R.string.operator_mixed, a1, operator1, a2, operator2, a3));
其中a1,a2,a3是整数,而operator1,operator2是字符串。
我的代码有问题吗?
答案 0 :(得分:0)
尝试以下
<string name="operator_mixed">%d %s %d %s %d</string>
textview.setText(String.format(getString(R.string.operator_mixed),a1,operator1,a2,operator2,a3)));
您必须使用String.format()
答案 1 :(得分:0)
我刚刚在我的应用中尝试了此代码。
string.xml :(与您的相同)
<string name="operator_mixed">%d %s %d %s %d</string>
MyActivity.java
int a1 = 10;
int a2 = 20;
int a3 = 30;
String operator1 = "Operator 1";
String operator2 = "Operator 2";
my_txt_title.setText(getResources().getString(R.string.operator_mixed, a1, operator1, a2, operator2, a3));
一切正常。
答案 2 :(得分:0)
我知道了。我只需要传递这样的上下文:
textview.setText(c.getResources().getString(R.string.operator_mixed, a1, operator1, a2, operator2, a3))
这里c是MainActivity的上下文。