java不兼容类型中的一行烘烤错误

时间:2014-07-24 20:25:47

标签: java android toast android-toast

当我想在Java中进行一行吐司时,我收到以下错误消息:

JavaTester.java:34: incompatible types
found   : void
required: android.widget.Toast
Toast newToast = Toast.makeText(this, "This is a one liner", Toast.LENGTH_LONG).show();
1 error

有谁知道如何解决此错误?

4 个答案:

答案 0 :(得分:4)

您无需声明Toast对象

Toast.makeText(this, "This is a one liner", Toast.LENGTH_LONG).show();

就像那样,您将显示Toast

或者,如果您需要自定义吐司,请删除对'show()'

的调用
Toast newToast = Toast.makeText(this, "This is a one liner", Toast.LENGTH_LONG);
//Do stuff here
newToast.show();

答案 1 :(得分:3)

您正在调用.show()方法,该方法的返回类型为void。要么不尝试使用结果:

Toast.makeText(this, "This is a one liner", Toast.LENGTH_LONG).show();

或使用两个陈述:

Toast newToast = Toast.makeText(this, "This is a one liner", Toast.LENGTH_LONG);
newToast.show();

答案 2 :(得分:1)

Toast toast是Toast的对象实例,Toast.makeText()是静态引用。删除吐司吐司=它会起作用。

答案 3 :(得分:0)

无需分配到newToast,因为show()返回void。