AlertDialog - 当用户点击“确定”时如何运行检查

2023-11-25

对于自定义 AlertDialog,我可以覆盖肯定按钮以不关闭对话框吗?相反,我想运行一些编辑检查,并在检查失败时保持对话框打开。

protected Dialog onCreateDialog(int id) {
  Dialog alertDialog = null;
  builder = new AlertDialog.Builder(this);
  switch(id) {
    case LOGIN_USERID_BLANK:
      builder.setMessage((String)getString(R.string.username_not_blank));
      builder.setPositiveButton((String)getString(R.string.ok), new DialogInterface.OnClickListener() {
      public void onClick(DialogInterface dialog, int whichButton) {
      // Can I do something here so that the dialog does not close?
}
});

break;


在 Google 更改 Dialog API 之前,有一个解决方法:

LayoutInflater factory = LayoutInflater.from(this);
final View view = factory.inflate(R.layout.yoMamma, null);
final Dialog dlg = new AlertDialog.Builder(this)
    .setTitle(R.string.yoTitle)
    .setView(view)
    .setPositiveButton(R.string.dlgOK, new DialogInterface.OnClickListener() {
      @Override public void onClick(DialogInterface dialog, int which) {
        // This won't be called.
      }})
    .create();
dlg.show();
View button = ((AlertDialog)dlg).getButton(DialogInterface.BUTTON_POSITIVE);
button.setOnClickListener(new View.OnClickListener() {
  @Override public void onClick(View v) {
    // This WILL be called.
    // Remove the following if you don't want the dialog to dismiss
    dlg.dismiss();
  }});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AlertDialog - 当用户点击“确定”时如何运行检查 的相关文章

随机推荐

  • 如何在有向图中找到最小顶点集,以便可以到达所有其他顶点

    给定一个有向图 我需要找到可以到达所有其他顶点的最小顶点集 因此 该函数的结果应该是最小数量的顶点 从该顶点可以通过有向边到达所有其他顶点 可能的最大结果是如果没有边 则将返回所有节点 如果图中存在循环 则对于每个循环 选择一个节点 哪一个
  • 撇号被翻译为“tm”。哪个 PHP 函数会将其显示为 '?某物_解码?

    我正在抓取一些推文并将其打印在我的网站上 并且大写撇号被呈现为 tm 不是很好 我应该通过哪个 php 函数运行字符串才能让这些奇怪的字符显示为更接近 我在 Chrome 中遇到了这个问题 添加一个 到 头部 部分修复它
  • 正确的 C 预处理器宏无操作

    对于调试日志记录 我经常看到并使用类似的东西 ifdef DEBUG define DLOG fmt args printf s d fmt FILE LINE args else define DLOG fmt args endif 但在
  • Xamarin 中与分辨率相关的字体大小

    我是 Xamarin 新手 正在为我的第一个应用程序而苦苦挣扎 我有一张图像 上面有一个入口视图 这样我就创建了一个自定义条目背景 不过 条目的字体大小不会随着具有不同分辨率的不同设备而缩放 当我调整设备 A 的字体大小并现在在设备 B 上
  • 如何使用用户定义的类对象作为networkx节点?

    类点定义为 其中还有一些方法 属性和东西 但这只是最小的部分 class point def init self x y self x x self y y 于是 我看到了这个问题 但是当我尝试应用它时 它返回一个错误 G nx Graph
  • Oracle SQL 插入多行并返回一些内容

    在 Oracle 中 可以通过执行如下查询来插入多行 INSERT ALL INTO mytable column1 column2 column3 VALUES val1 1 val1 2 val1 3 INTO mytable colu
  • 使用 Hibernate PreInsertEventListener 更改实体

    我正在使用 Hibernate 4 1 尝试调用 PreInsertEventListener 来更新实体 然后再将其插入数据库 基于此处的文章 http anshuiitk blogspot ca 2010 11 hibernate pr
  • 如何在两个HTML页面之间交换变量?

    我有两个 HTML 页面 example1 html and example2 html 我如何传递变量example1 html to example2 html使用查询字符串 并检索该变量example2 html不使用任何服务器端代码
  • 元素不会保持居中,尤其是在调整屏幕大小时

    我的问题是我无法水平居中三角形指针 好吧 对于某些窗口大小 我可以将指针居中 但是当我缩小或扩展窗口时 它会再次将其放置在错误的位置 我缺少什么 body background 333333 container width 98 heigh
  • 如何从 Symfony2 config.yml 读取配置设置?

    我在 config yml 文件中添加了一个设置 如下所示 app config contact email email protected 对于我的一生 我不知道如何将其读入变量 我在我的一个控制器中尝试了类似的操作 recipient
  • 元素之间的间距

    我是 CSS 和 HTML 的完全初学者 我正在构建我的第一个基本培训页面 我现在想做的是在两个元素之间留出间距而不使用 br 目前我正在使用这个 formClear clear left height 25px 它适用于间距 但你这是正确
  • 更多 Pythonic/Pandaic 方法来循环 pandas 系列

    这很可能是非常基本的东西 但我无法弄清楚 假设我有一个这样的系列 s1 pd Series 1 1 1 2 2 2 3 3 3 4 4 4 如何在无需恢复使用 for 循环的情况下对该系列的子系列进行操作 例如 假设我想将其变成一个包含四个
  • 使用 papa parse 解析大型 csv 文件

    我正在尝试加载一个大约 100k 行的文件 到目前为止浏览器已经崩溃 本地 我上网查了一下 发现 Papa Parse 似乎可以处理大文件 现在加载到文本区域的时间减少到大约 3 4 分钟 加载文件后 我想要执行更多 jQuery 来执行计
  • 从 javascript 重定向到操作

    我有一个 MVC4 项目 在客户端我需要重定向到特定的操作方法 我已阅读以下帖子如何从 JavaScript 方法重定向到操作 下面有一条关于使用的评论 window location href controller action para
  • 使 SVG 路径像一条平滑的线,而不是参差不齐

    那么在我创建的项目中河流线 from pathes 并且由于我的这种大笔划宽度这个很ragged 我已经四处寻找了 但我唯一发现的是stroke linejoin round 正如你在这里看到的 好多了 但我仍然不满意 有什么办法可以得到一
  • 为什么虚函数需要通过指针传递而不是通过(对象的)值传递?

    我想我理解虚拟方法和虚表的概念 但我不明白为什么将对象作为指针 或引用 传递和按值传递 哪种废弃虚表或其他东西 为什么这样的事情会起作用 Material m new Texture poly gt setMaterial m method
  • 不知道如何使用 PDFBox

    我正在尝试创建一个 PDF 文件 其中包含文档中的大量文本框和来自另一个类的文本字段 我正在使用 PDFBox 好的 创建一个新文件很容易 编写一行文本也很容易 现在 当我尝试插入下一个文本行或文本字段时 它会覆盖内容 PDDocument
  • 如何在类的头文件中定义 const double?

    在我的类的头文件中 我正在尝试以下操作并收到编译器投诉 private static const double some double 1 0 你应该如何实际做到这一点 在 C 11 中 您可以使用非整数常量表达式 这要归功于constex
  • C# 读取另一个进程内存

    我在从游戏中读取简单的 int 时遇到问题 我用 Cheat Engine 找到了一个静态地址 如果我手动将其插入列表中 它每次都会起作用 但是当我尝试用 C 读取它时 它总是读取 0 字节 如果有人可以提供帮助 那就太好了 Thanks
  • AlertDialog - 当用户点击“确定”时如何运行检查

    对于自定义 AlertDialog 我可以覆盖肯定按钮以不关闭对话框吗 相反 我想运行一些编辑检查 并在检查失败时保持对话框打开 protected Dialog onCreateDialog int id Dialog alertDial