android Dialog 点击后消失

需求是这样的:我点击了一张图片或者TextView后,会弹出个dialog,dialog中显示一个Imageview或者textview,我现在想再点击下dialog,这... 需求是这样的:我点击了一张图片或者TextView后,会弹出个dialog,dialog中显示一个Imageview或者textview,我现在想再点击下dialog,这个dialog就消失,该如何做
找到办法了,很简单,就是既然dialog中你set了一个view,既然他是view,那你就可以给他添加个点击监听事件,然后在里面对dialog关闭就可以了
展开
 我来答
一诺千金丨
推荐于2016-09-27 · 知道合伙人数码行家
一诺千金丨
知道合伙人数码行家
采纳数:8766 获赞数:32844
1、专业生产电力检测设备,若要咨询相关直接向我咨询关于电力检测设备的问题吧。 2、武高电测最佳员工。

向TA提问 私信TA
展开全部
  1. Android中的弹出框在被点击时, 无论点击哪个按钮都会关闭窗口。 

  2. 但是有的情况下我们不需要立即关闭窗口。

  3. 下面的情况是弹出框中要求用户输入文件名,并在点击确定时检查文件名的合法性, 不合法则提示用户重新输入,弹出框要保持在界面上使用反射  (如图)   

    DialogInterface.OnClickListener dialogListener = new DialogInterface.OnClickListener() {
  
  @Override
  public void onClick(DialogInterface dialog, int which) {
   switch (which) {
   case DialogInterface.BUTTON_POSITIVE:
    try { 
        //不关闭
     Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing"); 
        field.setAccessible(true); 
        field.set(dialog, false); 
        } catch (Exception e) {
         e.printStackTrace();
         } 
    if(inputCheck()){
     //关闭对话框
     try {
      Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");
      field.setAccessible(true);
      field.set(dialog, true);
      } catch (Exception e) {
      e.printStackTrace();
      }
     dialog.dismiss();
    }
    break;
   case DialogInterface.BUTTON_NEGATIVE:
    dialog.dismiss();
    break;

   default:
    break;} } };

天驴英才
2011-01-14 · TA获得超过548个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:332万
展开全部
你想要点dialog哪个部分让它消失???可以考虑给它加个button呀
AlertDialog有setButton,在onClickListener里什么都不做,也会消失
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式