我的应用程序有问题,如果用户快速多次单击该按钮,那么即使我按下该按钮的对话框消失,也会生成多个事件
通过在单击按钮时将布尔变量设置为标志,我知道了一种解决方案,因此可以阻止将来的点击,直到关闭对话框.但是我有很多按钮,每次按钮都必须这样做,因为每个按钮似乎都是一种矫枉过正.在Android(或许是一些更智能的解决方案)中,没有其他方法只允许每个按钮点击生成事件动作吗?
更糟糕的是,即使处理第一个操作,多个快速点击似乎也会生成多个事件操作,因此如果我想在第一个单击处理方法中禁用该按钮,则队列中已存在等待处理的事件操作!
请帮忙谢谢
我使用启动对话框片段
FragmentTransaction ft =
getFragmentManager().beginTransaction();
MyDialogFragment dialog = new MyDialogFragment()
dialog.show(ft, "dialog");
Run Code Online (Sandbox Code Playgroud)
然后我就做了
Fragment prev = getFragmentManager().findFragmentByTag("dialog");
Run Code Online (Sandbox Code Playgroud)
但是一旦我弄到了prev,我该如何检查它是否显示?
回到故事
我的问题是我的循环代码不断一次又一次地启动对话框.但是如果对话框已经显示,我不希望它再次启动.这个背景故事仅供上下文使用.我寻求的答案不是:"将它移出循环."
android android-layout android-fragments android-dialogfragment