有3个活动。第一个活动和第二个活动中的Textview的文本值显示在第三个活动的EditText中。
主要活动-Textview1文字
第二活动-Textview2文字
Displayactivity-Edittext = Textview1 + Textview2
使用意图,我尝试将两个活动的TextView值传递给第三个活动。在第三个活动中,我仅在EditText中使用+进行了串联。我试图在一个段落中显示以前的textview值,即EditText。
此代码是第三个活动:
显示活动
Intent intent = getIntent();
String displayingtext = intent.getStringExtra("message");
String displayingsecondtext = intent.getStringExtra("hey");
editText.setText(displayingtext+displayingsecondtext);
显示文字名称:消息来自第一个活动
displaysecondtext名称:嘿,来自第二个活动
显示的输出来自第一个textview和下一个单词null。
在代码中显示
“不要在setText上使用串联。使用android资源”
输入 :
Textview1 =星期一好。
Textview2 =再见,星期一。
预期输出:
Editext =你好,星期一。再见。
答案 0 :(得分:0)
好的,我明白了。也就是说,您必须将它们放入资源中。 如果您的应用程序不使用多种语言支持,那么您只需忽略警告
答案 1 :(得分:0)
使用java.lang.String中由“ +”运算符插入的 concat()方法。
String displayingtext = intent.getStringExtra("message");
String displayingsecondtext = intent.getStringExtra("hey");
editText.setText(displayingtext.concat(displayingsecondtext));
答案 2 :(得分:0)
您需要将Activity2 startActivity意向参数中来自Activity1和“嘿”的“消息”发送给Activity3。
这只是警告,因为Android Studio Lint工具使用“ +”运算符检查setText方法参数。考虑像这样修复它:
String resultText = displayingtext+displayingsecondtext;
editText.setText(resultText);
答案 3 :(得分:0)
使用greenbot事件总线,您可以做得更好...