gpt4 book ai didi

android - 动画时禁用所有触摸屏交互

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:44:41 25 4
gpt4 key购买 nike

我希望在显示动画时禁用所有触摸屏交互。我不希望在动画开始或结束时对按钮使用 setClickable() 方法,因为有大量按钮。有什么建议吗?

最佳答案

在您的 Activity 中,您可以覆盖 onTouchEvent 并始终返回 true; 以指示您正在处理触摸事件。

您可以找到该函数的文档 there .

编辑 这里有一种方法可以禁用整个屏幕上的触摸,而不是一个一个地处理每个 View ...首先像这样更改当前布局:

<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>

< .... put your current layout here ... />

<TouchBlackHoleView
android:id="@+id/black_hole"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</FrameLayout>

然后用这样的东西定义你的自定义 View :

public class TouchBlackHoleView extends View {
private boolean touch_disabled=true;
@Override
public boolean onTouchEvent(MotionEvent e) {
return touch_disabled;
}
public disable_touch(boolean b) {
touch_disabled=b;
}
}

然后,在 Activity 中,您可以禁用触摸

(TouchBlackHoleView) black_hole = findViewById(R.id.black_hole);
black_hole.disable_touch(true);

并启用它

black_hole.disable_touch(false);

关于android - 动画时禁用所有触摸屏交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10987633/

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