我有这样的CustomDialog.java:
public class CustomDialog { Dialog dl; public void ShowDialog(Context context, String message) { dl = new Dialog(context); dl.setContentView(R.layout.custom_dialog); TextView tv_message = (TextView) dl.findViewById(R.id.textViewMessage); tv_message.setText(message); Button bt_yes = (Button)dl.findViewById(R.id.buttonYes); Button bt_no = (Button)dl.findViewById(R.id.buttonNo); bt_yes.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { CheckYes(); } }); bt_no.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dl.dismiss(); } }); dl.show(); } public Boolean CheckYesNo(Boolean check){ return check; } public Boolean CheckYes() { return true; } public void CloseDialog() { dl.dismiss(); }
}
这是Activity中使用CustomDialog的代码:
CustomDialog cdl = new CustomDialog (); cdl.ShowDialog(Activity1.this, "test"); if (cdl.CheckYesNo(true)) { // doing something with data and go to Activity 2 } else { cdl.CloseDialog(); }
我想要这样:
1.在Activity1中,单击ImageButton时,将显示CustomDialog.
2.在CustomDialog显示之后,如果单击Button yes,它会对数据执行某些操作并转到Activity2.
3.如果单击按钮否,CustomDialog将关闭并且不对数据执行任何操作.
但我的问题是:
当单击ImageButton,CustomDialog显示时,我想用数据执行的代码将自动转到Activity2.
我不能选择是或否来点击.
我认为Button是onClick事件中的问题.
怎么解决?
参数initilize
Dialog dialog;
您可以在想要使用的地方使用它
dialog = new Dialog(this); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.setContentView(R.layout.custom_dialog); dialog.show(); TextView tv_message = (TextView) dialog .findViewById(R.id.textViewMessage); tv_message.setText(message); Button bt_yes = (Button)dialog.findViewById(R.id.buttonYes); Button bt_no = (Button)dialog.findViewById(R.id.buttonNo); bt_yes.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { CheckYes(); } }); bt_no.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dialog.dismiss(); } });