Toast不适用于参数

时间:2014-11-25 12:16:11

标签: java android

我自学了android项目,我对android和java很新。 我无法弄清楚错误,请帮忙,

Toast.makeText(this, msg, Toast.LENGTH_LONG).show();

这给了我下面粘贴的错误: 类型makeText(Context, CharSequence, int)中的方法Toast不适用于参数(new BleWrapperUiCallbacks.Null(){}, String, int)

当我使用" context"而不是"这",没有错误。 如果我想使用"这个"关键字意味着我该怎么办? 什么是"这个" toast.maketext函数上的关键字?感谢你。

5 个答案:

答案 0 :(得分:1)

如果想在匿名内部类(例如this)中使用Activity作为指向OnClickListener的指针,则必须在{Activity之前使用this名称1}}:MyActivity.this,替换为您的活动名称。

答案 1 :(得分:0)

这个 -

  

在实例方法或构造函数中,这是对它的引用   当前对象

您只能在扩展Context的对象上使用它,如Activity -

  

活动扩展ContextThemeWrapper方法

Toast.makeText(MainActivity.this, CharSequence, int)

在其他情况下,您应该使用上下文引用

答案 2 :(得分:0)

如果您在Activity类的上下文中包含此代码,则只能使用this关键字 android中的所有gui都有它的上下文 - >例如Activity,所以要创建像toast这样的对象,你需要传递Context 如果您的方法在活动子类以外的其他类中使用this,则将新参数传递给您的方法 - > Context context,并使用它(在Activity类中):
MyClass.myFunction(YourActivity.this);

答案 3 :(得分:0)

如果你想使用这个关键字,你可以这样使用,

Toast.makeText(Classname.this, msg , Toast.LENGTH_LONG).show();

Classname是你的android类名

答案 4 :(得分:0)

Toast.makeText(youractivityname.this, "your message text", Toast.LENGTH_LONG).show();