这是我想添加弹出消息的方法。如果结果集包含“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);
}
}
}
答案 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();