当我点击得太快时,会弹出两个或多个相同的 DialogFragment。然而,这只发生在 Android 模拟器中,而不是在真实设备中。有什么建议吗?
When I tap too quickly, Two or more same DialogFragment pop up. However this is happening in only Android emulator, not in real device. Any advice?
现在,我在调用片段之前先调用这个函数
fun toggleUIEventsListener(delay: Long = 1000) {
activity?.window?.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE, WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE)
Timer().schedule(delay) {
activity?.runOnUiThread {
activity?.window?.clearFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE)
}
}
}
我相信它也会在真实设备中发生。检查其他手机并尝试尽可能快地点击(两次),你会发现它也发生在一些真实的设备上。
你可以解决这个问题的方法是...做一个布尔值,isClicked
,当它被点击时将它设置为 true
然后不允许用户点击它至少 3秒,之后用户应该可以再次单击该按钮。
现在,我在调用片段之前先调用这个函数
fun toggleUIEventsListener(delay: Long = 1000) {
activity?.window?.setFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE, WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE)
Timer().schedule(delay) {
activity?.runOnUiThread {
activity?.window?.clearFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE)
}
}
}
我相信它也会在真实设备中发生。检查其他手机并尝试尽可能快地点击(两次),你会发现它也发生在一些真实的设备上。
你可以解决这个问题的方法是...做一个布尔值,isClicked
,当它被点击时将它设置为 true
然后不允许用户点击它至少 3秒,之后用户应该可以再次单击该按钮。