尝试创建Toast.makeText时出错

时间:2012-08-31 11:25:09

标签: java android apk runtime-error toast

我正在开发一个Android应用程序,当我在我的代码中使用“Toast.makeText”时,我面临强制关闭问题,当我删除它完美的工作线。任何人都可以告诉我这个问题。我正在粘贴Log Cat的屏幕截图。

Screenshot of Log Cat

7 个答案:

答案 0 :(得分:3)

Toast.makeText(MainActivity.this, "Sending SMS..Please Wait..!!",Toast.LENGTH_SHORT).show();

答案 1 :(得分:2)

确定。类活动从类Context扩展。在Activity中引用Context是不正确的。当你想要显示Toast时,只需将你的活动作为上下文。

Class MainActivtiy extends Activty {
...

    Toast.makeText(this,"Sending SMS..Please Wait..!!",Toast.LENGTH_SHORT).show();
...
}

如果在内部课程中调用,请执行以下操作:

Class MainActivtiy extends Activty {
...
     onClick (View v) {
         Toast.makeText(MainActivty.this,"Sending SMS..Please          Wait..!!",Toast.LENGTH_SHORT).show();
     }
...
}
祝你好运!

答案 2 :(得分:0)

context变量没有价值。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    this.context = this;
}

答案 3 :(得分:0)

您可以使用getApplicationContext()或Your_Class_Name.this而不是使用this.context然后我认为这个问题将会得到解决。

答案 4 :(得分:0)

找到解决方案..就像这样

Toast.makeText(MainActivity.this, "Sending SMS..Please wait..!!",Toast.LENGTH_SHORT).show();

答案 5 :(得分:0)

Toast.makeText(this, "Sending SMS..Please Wait..!!",Toast.LENGTH_SHORT).show();

答案 6 :(得分:0)

使用this.context从Thread访问上下文会给你NULLPointerException,因为Thread类结构属于经典Java并且不具备Android上下文。例如,您尝试访问类似'this.context'的空值。正如@SamirMangroliya建议使用当前活动或使用Android方式的多线程ASynchTask拥有上下文参考

请注意,这是一条评论,但无法找到原始回复,所以这里是