我遇到了一个问题我现在为Alert Dialogs做了一个类,如果有人按下Ok它应该回到之前的活动但是我不知道怎么做,因为当我放入finsih();它给我一个错误,这是我的代码:
package com.laurenswuyts.find.it;
import com.laurenswuyts.find.it.R;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
public class AlertDialogManager {
/**
* Function to display simple Alert Dialog
* @param context - application context
* @param title - alert dialog title
* @param message - alert message
* @param status - success/failure (used to set icon)
* - pass null if you don't want icon
* */
@SuppressWarnings("deprecation")
public void showAlertDialog(Context context, String title, String message,
Boolean status) {
AlertDialog alertDialog = new AlertDialog.Builder(context).create();
// Setting Dialog Title
alertDialog.setTitle(title);
// Setting Dialog Message
alertDialog.setMessage(message);
if(status != null)
// Setting alert dialog icon
alertDialog.setIcon((status) ? R.drawable.success : R.drawable.fail);
// Setting OK Button
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(final DialogInterface dialog, final int which) {
}
});
// Showing Alert Message
alertDialog.show();
}
}
在public void Onclick中我尝试输入finish();但那没用。
任何人都可以帮助我吗?提前谢谢!
此致
答案 0 :(得分:1)
您应该向经理添加一个属性;
Context context;
使用showAlertDialog()
方法启动它。
点击下方;
((Activity) context).finish();
答案 1 :(得分:0)
您可以从调用活动传递点击侦听器:
DialogInterface.OnClickListener clickListener = new DialogInterface.OnClickListener() {
public void onClick(final DialogInterface dialog, final int which) {
finish();
}
});
AlertDialogManager manager = new AlertDialogManager();
manager.showAlertDialog(this, title, message, status, clickListener);
然后在AlertDialogManager
中,您可以更改方法:
public void showAlertDialog(Context context, String title, String message,
Boolean status, DialogInterface.OnClickListener clickListener) {
AlertDialog alertDialog = new AlertDialog.Builder(context).create();
// Setting Dialog Title
alertDialog.setTitle(title);
// Setting Dialog Message
alertDialog.setMessage(message);
if(status != null)
// Setting alert dialog icon
alertDialog.setIcon((status) ? R.drawable.success : R.drawable.fail);
// Setting OK Button
alertDialog.setButton("OK", clickListener);
// Showing Alert Message
alertDialog.show();
}
这样点击行为由调用类处理,AlertDialogManager
不知道点击OK后会发生什么。