吐司没有出现

Toast does not appear

我正在开发一个 Android 应用程序,我有点困惑为什么我的 Toast 没有显示在我的应用程序中。

toast 不在 Activity 中。因此,这是我的解决方案。主要Activity:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_startup);

    // Init context
    InstanceHandler.setContextOfMainActivity(this);
}

在 class 实例处理程序中:

private Activity mActivity;
public Context mContext;

public void setContextOfMainActivity(Activity activity) {
    mActivity = activity;
    mContext = activity.getApplicationContext();
}

并在受影响的 class Connection.java(NOT extends Activity)中,我称祝酒词:

public class Connection{

    public void test(){
        Toast.makeText(InstanceHandler.mContext, "This is a test", Toast.LENGTH_SHORT).show();
    }
}

但是没有任何反应。应用程序在 Toast 之后中止以下代码。

那边就用这个

Toast.makeText(mContext, "This is a test", Toast.LENGTH_SHORT).show();

像这样使用Class

public class Connection{
    Context mContext;
    public Connection(Context context) {
        // TODO Auto-generated constructor stub

         mContext = context;
    }

    public void test(){
        Toast.makeText(mContext, "This is a test", Toast.LENGTH_SHORT).show();
    }
}

您似乎在 InstanceHandler class 之外使用 Toast.makeText(..)..。如果您在其他 Activity 内部使用,则使用 activity直接使用,如果您在 InstanceHandler class 内部使用,则使用

mContext 代替 InstanceHandler.mContext

希望对您有所帮助。