gpt4 book ai didi

android - 查看开关 : how to block user interaction in-between?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:08 25 4
gpt4 key购买 nike

我使用 View 切换器以类似于任务中标准 Activity 切换的方式在 View 之间切换。例如,切换器中的当前 View 可能有一个按钮,单击该按钮会启动 View 切换:现在已过时的当前 View 滑出,并由滑入的新当前 View 替换。

动画开关只适用于一件事:我找不到告诉滑出 View 停止处理用户事件(如触摸事件)的正确方法。所以发生的情况是,如果完成得足够快,而且不必那么快,用户可以多次单击启动 View 切换的按钮,这很糟糕。单击(或任何用户操作)启动 View 切换后,我想使滑出 View 上的所有其他用户事件无效并忽略。

是否有一种干净、标准的方法来做到这一点?我已经在滑出 View 上尝试了 setEnabled(false),但似乎 subview 中的点击监听器仍然在之后处理。我想避免的事情是查找所有事件处理程序并添加验证代码,以确保在 View 实际滑出时不执行任何操作。

最佳答案

我遇到了类似的问题,想分享我的解决方案。我重写了 Activity.dispatchTouchEvent 方法,如前所述 here .这样做时,我会在将所有触摸事件发送到其他 View 之前拦截它们。

public boolean mDisplayBlocked = false;

@Override
public boolean dispatchTouchEvent(MotionEvent pEvent) {
if (!mDisplayBlocked) {
return super.dispatchTouchEvent(pEvent);
}
return mDisplayBlocked;
}

关于android - 查看开关 : how to block user interaction in-between?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5380422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com