吐司没有显示字段值

时间:2014-07-29 10:47:42

标签: android toast

这里只是一个简单的疑问。如何在祝酒词中显示字段值。

检查以下代码:

name = (EditText)findViewById(R.id.name)
....
....
Toast.makeText(getApplicationContext(), "Thank You," + name + "for your time", Toast.LENGTH_LONG).show();

如果用户输入Robot作为名称,则应显示Toast

  

"感谢你,机器人为你的时间"

而不是它显示

  

"谢谢你,androidwidget.EditText @ 4053ad80为你的时间"

建议如何显示用户输入的变量以在吐司中显示。

提前致谢

5 个答案:

答案 0 :(得分:1)

您需要实际获取文本。

+ name.getText().toString() +

将解决问题

这种情况正在发生,因为只是调用name只返回name的地址。要获取name包含的内容,您必须通过getText()指定要返回的内容,然后使用toString()

确保其格式为字符串格式

答案 1 :(得分:0)

name是对EditText的引用,而不是String。你必须这样做:

Toast.makeText(getApplicationContext(), "Thank You," + name.getText() + "for your time", Toast.LENGTH_LONG).show();

答案 2 :(得分:0)

name替换为您的吐司中的name.getText().toString()

 Toast.makeText(getApplicationContext(), "Thank You," + name.getText().toString()+ "for your time", Toast.LENGTH_LONG).show();

答案 3 :(得分:0)

您正在显示“对象”名称,即EditText。相反,您应该将EditText中包含的字符串传递给Toast,如下所示:

name = (EditText)findViewById(R.id.name)
Toast.makeText(getApplicationContext(), "Thank You," + name.getText().toString() + "for your time", Toast.LENGTH_LONG).show();

答案 4 :(得分:0)

尝试这样做

Toast.makeText(getApplicationContext(), "Thank You," + name.getText().toString()+ "for your time", Toast.LENGTH_LONG).show();