Android Dialog 点击不消失

不知道大家有没有这个需求
弹出有一个dialog
比如搜索的时候
这时候用户没有输入 点击确定这时候 dialog就dismiss啦
我们的需求是要 弹出Toast dialog不消失

dialog没有提供相关Api控制
这里有一个办法

先设置一个button 然后监听为空

再取出来设置监听的onclick事件 就可以拦截后续dialog自身的事件

Android Dialog 点击不消失_第1张图片
1.gif
AlertDialog.Builder alertDialog = new AlertDialog.Builder(getActivity())
    .setTitle("输入要搜索的图片信息")
    .setView(editText)
    .setNegativeButton("取消", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

        }
    }).setPositiveButton("搜索", null);
dialog = alertDialog.create();
dialog.show();
if(dialog.getButton(AlertDialog.BUTTON_POSITIVE)!=null) {

dialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickList  
ener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        if (TextUtils.isEmpty(editText.getText().toString().trim())) {
            ToastUtil.showToast("输入点什么吧");
            return;
        } else {
            //do             }
    }
});
}

你可能感兴趣的:(Android Dialog 点击不消失)