当我点击得太快时,会弹出两个或多个相同的 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秒,之后用户应该可以再次单击该按钮。