问题标签 [android-dialog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
34420 浏览

android - 在对话框外发生单击时如何触发事件

我想知道如何解决我遇到的问题。

我有一个在活动中弹出的对话框。对话框没有覆盖整个屏幕,因此活动中的按钮仍然显示。当在对话框边界之外触摸时,我可以轻松关闭对话框dialog.setCanceledOnTouchOutside(true);

但是,如果单击超出对话框的范围,我想做的是触发一个事件(例如,如果有人触摸主 Activity 上的按钮,它应该关闭对话框并同时触发该事件)。

0 投票
1 回答
1109 浏览

android - 为什么会出现错误“R.layout.dialog 无法解析”?

这是我在 XML 文件main.xml中的布局:

这是活动代码:

基本上,我想运行一个对话框窗口的测试程序,它在 Startup 上显示一些东西,但是我得到R.layout.dialog 无法在行解决dialog.setContentView(R.layout.dialog); 什么问题?谢谢!

0 投票
1 回答
7084 浏览

android - 如何在android中启动时创建PopupWindow?

可以使用Dialog类,但我不希望这样。相反,我希望它通过使用PopupWindow类来完成,该类在启动时弹出并在弹出窗口上显示一些消息。我很无奈,只是花了很多天后才得到这个。希望我在这里得到它。请和谢谢。如果你没有得到我想要的,还请看下面的片段。

上面的代码给了我强制关闭:/帮助大家..

0 投票
1 回答
710 浏览

android - android,当我尝试调用 datepickerdialog 时它没有出现?

我在尝试在单击按钮时创建事件对话框时遇到问题,但是没有对话框可以从中选择日期 这是我的代码

我正在调用 buttonCLick showDialog(2);

0 投票
1 回答
1155 浏览

android - Android:无法访问对话框 TextView

我是android开发的新手。我擅长 Java,但不擅长 Android API。这是我的工作申请测试程序,所以我需要帮助来解决问题。我制作了对话框,通过按下按钮调用,但我无法访问对话框的文本视图(当我尝试访问它时应用程序崩溃 - NullPointerException),即使 Eclipse IDE 也没有发现任何问题。我包含了几乎所有的代码,因为我不知道要排除什么

custom_dialog.xml

BalticAmadeusActivity.java

0 投票
1 回答
358 浏览

android - 即使我使用 onCreateDialog 和 onShowDialog 也会泄漏窗口

我已经通过 CommonsWare 实现了 Asynctask+orientation 更改方法

基本上,它的作用是当设备旋转时,活动被破坏。因此,在活动销毁的最后阶段,它将 AsyncTask 从活动中分离出来,并将其传递给新活动。创建新活动时,我将 AsyncTask 附加回新活动。

注意:我没有使用android:configChanges="orientationin manifest,因为我需要不同的纵向和横向布局。

一切正常。

众所周知,有一种显示对话框的正确方法,我正在使用它。

这也很好用。

当我尝试同时使用这两种方法时,就会出现问题。

当我用showDialog(n). 如果我旋转设备一次,一切正常。但是,当我在 logcat 日志之后再次旋转时E/WindowManager(10035): ActivityMainActivity has leaked window DecorView@40520998 that was originally added here应用程序并没有崩溃。之后,每次我旋转设备时,logcat 都会开始记录相同的错误,但不会崩溃。

代码(主要活动):

代码(异步任务):

0 投票
1 回答
5652 浏览

android - 如何创建带有选项卡的对话框

是否可以创建一个DialogTabs 的?

如果可能,通过选择其中一个Tab我必须调用 an Activity,是否可以通过 a 传递值Bundle

0 投票
1 回答
2188 浏览

android - 在 AsyncTask 中关闭 ProgressDialog 时出错

我有一个完全独立的类,它扩展了 AsyncTask,我用它来执行 html get,所以它不会冻结 UI。在 AsyncTask 的构造函数中,我传递了活动的上下文,该上下文调用了任务的 .execute(),因此我可以在 htmlget 运行时显示 ProgressDialog。第一个问题出现了:旋转手机时,当前视图被破坏,当应用程序到达对话框的 .dismiss() 时,它崩溃了,因为它附加到的视图不再存在。我确实设法在 95% 的情况下解决了这个问题,但是在剩下的 5% 中,仍然存在问题。我最初的解决方案是在 htmlget 运行时强制禁用旋转,方法是将活动也传递给 AsyncTask,并调用

在 onPreExecute() 中,并调用

在 onPostExecute() 中,这样即使用户旋转屏幕,也不会破坏当前的活动。但是,正如我已经提到的,在剩下的 5% 中,仍然存在一个问题,导致强制关闭。我所知道的如下:

我有这个 StackTrace,我的用户通过 Android Market 提供给我:

它发生在 AsyncTask 的下一行(这是 StackTrace 中提到的第 160 行):

pd.isShowing() 不会导致这种情况,因为我添加了 if 子句作为可能的解决方案,也许对话框在极少数情况下没有显示,但它没有解决

我的应用程序与 android 1.6.x 兼容,但在 eclipse 中为 android 2.2.x 设置了编译级别,因为我启用了“移动到 sd 卡”功能

从少数用户发送消息来看,他们启动htmlget,他们很可能看到ProgressDialog弹出,然后应用程序崩溃

知道什么会导致这种情况吗?或者如何解决?我的 NOSENSOR 方法是否正确?

0 投票
2 回答
2981 浏览

android - 有多个对话框时将特定对话框置于前面

在我的应用程序中,我有多个不同类型的对话框,我调用它们就像showDialog(dialogType).

我希望特定类型的对话框具有更高的优先级并始终显示在前面。我什至试图higherPriorityDialog.hide()隐藏该对话框并higherPriorityDialog.show()再次显示它,以便它应该出现在前面,但没有运气。

有什么办法可以做到这一点吗?

0 投票
2 回答
374 浏览

java - 自定义对话框执行 NPE

我将警报和对话框放在单独的班级中,以防止混乱。在我的活动中,我有一个 webView 并且 HTML 文档有一个在 Android 中执行自定义对话框的按钮。我正在使用 JavaScriptInterface 在 HTML 文档中的 JavaScript 函数和 Android Java 方法之间进行通信。除了这个自定义对话框之外,这一切都适用于我的 toast 消息和其他功能。

更新:

我做了一些改变,现在至少我得到了一个我无法遵循的 NPE。我将 Dialog 方法移至 JavaInterface 以使其更易于调试和其他一些更改;请参阅代码中的注释。

我不知道我有什么问题。我在 LogCat 中没有得到这个错误信息;只是强制关闭应用程序...??请看下面我的代码。

谢谢你的帮助!!

日志猫:

当我们等待 WebCore 对着陆的响应时,错过了一个阻力。threadid=9:线程以未捕获的异常退出(组=0x4024ee20) 致命异常:WebViewCoreThread java.lang.NullPointerException
在 android.app.Activity.findViewById(Activity.java:1745) 在 com.andaero.JavaScriptInterface.onCreateDialog(JavaScriptInterface.java:45) 在 android.app.Activity.onCreateDialog(Activity.java:2758) 在 android.app。 Activity.createDialog(Activity.java:936) at android.app.Activity.showDialog(Activity.java:2851) at android.app.Activity.showDialog(Activity.java:2810) at com.andaero.JavaScriptInterface.showDashBoard(JavaScriptInterface .java:32) 在 android.webkit.WebViewCore.nativeTouchUp(Native Method) 在 android.webkit.WebViewCore.access$3600(WebViewCore.java:52) 在 android.webkit 的 android.webkit.WebViewCore.nativeTouchUp(Native Method)。 WebViewCore$EventHub$1.handleMessage(WebViewCore.java:1340) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper。在 android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:723) 处循环(Looper.java:132)
在 java.lang.Thread.run(Thread.java:1020)

警报和对话框类:

JavaScriptInterface 类:

在包含 WebView 的主 Activity 中:

HTML 函数: