0

我正在开发一个android应用程序,当我在我的代码中使用“Toast.makeText”时,我面临强制关闭问题,当我删除它工作正常的行时。谁能告诉我这个问题。我正在粘贴 Log Cat 的屏幕截图。

原木猫截图

4

7 回答 7

3
Toast.makeText(MainActivity.this, "Sending SMS..Please Wait..!!",Toast.LENGTH_SHORT).show();
于 2012-08-31T11:32:41.203 回答
2

行。类 Activity 是从类 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();
     }
...
}

祝你好运!

于 2012-08-31T11:37:07.563 回答
0

context变量没有价值。

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

    this.context = this;
}
于 2012-08-31T11:30:23.213 回答
0

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

于 2012-08-31T11:32:00.593 回答
0

找到解决方案..它是这样的

Toast.makeText(MainActivity.this, "Sending SMS..Please wait..!!",Toast.LENGTH_SHORT).show();
于 2012-08-31T11:33:26.327 回答
0

尝试

Toast.makeText(this, "Sending SMS..Please Wait..!!",Toast.LENGTH_SHORT).show();
于 2012-08-31T11:33:52.197 回答
0

使用 this.context 从 Thread 访问上下文会给您 NULLPointerException,因为 Thread 类结构属于经典 Java 并且不拥有 Android 上下文。例如,您尝试访问为 null 的“this.context”。正如@SamirMangroliya 建议使用当前活动或使用Android 多线程异步任务的方式,它拥有上下文引用

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

于 2012-08-31T11:35:43.797 回答