AlertDialog点击按钮后不消失
2017-07-30 17:07
344 查看
在Android中点击dialog中的确定或者取消时,就是不调用dismiss()方法,dialog还是会消失,那要是我们要在点击后处理一些逻辑,就希望点击后不消失,可以按以下方式做。
//添加数据 btnAdd.setOnClickListener(new View.OnClickListener() { @Override public void onClick(final View v) { //设置弹出窗 final AlertDialog mDialog = new AlertDialog.Builder(MainActivity.this) .setPositiveButton("确定", null) .setNegativeButton("取消", null).create(); View view = View.inflate(MainActivity.this, R.layout.layout_dialog_edit, null); final EditText etAdd = (EditText) view.findViewById(R.id.et_add); mDialog.setView(view); mDialog.setCancelable(false); //设置点击空白区域不消失 mDialog.setOnShowListener(new DialogInterface.OnShowListener() { @Override public void onShow(DialogInterface dialog) { //确定按键 Button positiveButton = mDialog.getButton(AlertDialog.BUTTON_POSITIVE); positiveButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (TextUtils.isEmpty(etAdd.getText().toString())) { Utils.Toast_long(MainActivity.this, "请输入正确的小区名字"); } else { if (dbUtil.getAreaByName(etAdd.getText().toString())) { Utils.Toast_long(MainActivity.this, "小区" + etAdd.getText().toString() + "已经存在,请不要重复添加"); } else { //保存数据并刷新页面 dbUtil.saveArea(etAdd.getText().toString(), null); area.clear(); area.addAll(dbUtil.getArea()); myGridAdapter.notifyDataSetChanged(); Toast.makeText(MainActivity.this, etAdd.getText().toString(), Toast.LENGTH_SHORT).show(); mDialog.dismiss(); } } } }); //取消按键 Button negativeButton = mDialog.getButton(AlertDialog.BUTTON_NEGATIVE); negativeButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { mDialog.dismiss(); } }); } }); mDialog.show();
就是在setPositiveButton和setNegativeButton中传入null,然后在下面获取button。
Button positiveButton = mDialog.getButton(AlertDialog.BUTTON_POSITIVE);
这可以参见API文档中,AlertDialog中有getButton(int whichButton)方法,可以得到AlertDialog中的button。
相关文章推荐
- 让AlertDialog在按钮被点击后不消失
- AlertDialog点击按钮确定或取消不消失
- Android开发-UI控件:让AlertDialog在按钮被点击后不消失
- Android下关于AlertDialog点击 确定或者取消按钮 对话框自动消失的 解决办法
- Android中让AlertDialog点击了按钮后对话框不消失
- 让AlertDialog在按钮被点击后不消失
- Android studio 的AlertDialog控件,要实现点击确定和取消按钮时,对话框消失;点击空白处,对话框
- 让AlertDialog在按钮被点击后不消失
- AlertDialog点击按钮不消失
- AlertDialog点击按钮不消失的实现方法
- 让AlertDialog在按钮被点击后不消失【android搞死你】
- 让AlertDialog在按钮被点击后不消失
- AlertDialog 加载自定义布局点击按钮消失的方法
- 让AlertDialog在按钮被点击后不消失【android搞死你】
- 让AlertDialog在按钮被点击后不消失
- AlertDialog 自定义布局点击按钮消失方法
- 让AlertDialog在点击按钮后不消失、不关闭
- AlertDialog 点击按钮后让dialog 不消失
- 让AlertDialog在按钮被点击后不消失
- 让AlertDialog在点击按钮后不消失、不关闭