想要为Android上的错误制作弹出消息

时间:2013-09-10 08:31:00

标签: android error-handling popup toast

这是我想添加弹出消息的方法。如果结果集包含“404”,我想显示一条消息。我不能在这里使用Toast,因为这不是在任何活动上下文中写的。

protected void onPostExecute(String result) {
    // To make a popup notification when it is a Not Found Location
    if(result.contains("404")){
        return;
    }

    super.onPostExecute(result);
    if (baseFragment != null) {
        if (isMainTask) {
            baseFragment.onTaskFinished(result);
        } else {
            baseFragment.onSubTaskFinished(result);
        }
    }
}

3 个答案:

答案 0 :(得分:0)

您可以使用baseFragment.getActivity();或使用baseFragment.getActivity().getApplicationContext()的应用程序上下文获取活动上下文,并使用应用程序上下文显示Toast,或者您也可以使用活动上下文显示警报对话框。
注意:对于显示对话框,您必须使用活动上下文,否则会抛出异常。

答案 1 :(得分:0)

如果要显示对话框,则需要引用上下文。在调用AsyncTask的execute方法之前,可以通过类构造函数或setter方法向AsyncTask传递对上下文的引用。

答案 2 :(得分:0)

要创建任何类型的ErrorDialog / Dialog或PopupWindow,您需要活动Context。 PFB用于返回警报对话框的示例代码:

return new AlertDialog.Builder(baseFragment.getActivity().getApplicationContext())
            .setTitle("TITLE OF YOUR ALERT DIALOG")
            .setMessage(“MESSAGE YOU WANT TO SHOW”)
            .setCancelable(false)
            .setPositiveButton("BUTTON NAME",
                    new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog,
                        int whichButton) {
                    removeDialog(The id of the managed dialog);


                    //TASK YOU WANT TO PERFORM
                                      finish();
                }
            })
            .setNegativeButton("BUTTON NAME",
                    new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog,
                        int whichButton) {
                    removeDialog(The id of the managed dialog);
                    finish();
                }
            }).create();