4

我用不同的方法检测了 2 个视图上的滑动手势:第一个是通过 GestureDetector,第二个是 GestureOverlayView(我需要这个,因为第二个视图是 GridView 并且 GestureDetector 不能正常工作)。

第一个几乎是即时的,但第二个延迟大约 1 秒(Nexus S,ICS)。为什么,我该如何解决?

我无法更改方法,因为稍后我需要识别更复杂的手势,但我希望它能够立即工作。

4

3 回答 3

8

我找到了解决方案:

android:fadeOffset="0"
android:fadeDuration="0"

它立即起作用:)

于 2012-05-06T09:48:42.223 回答
1

由于其本质,GestureOverlayView 在开始识别形状之前依赖于时间。这不是性能问题。

编辑

抱歉,但我认为无法更改 GestureOverlayView 的反应时间 :(

编辑结束

于 2012-05-04T15:40:00.887 回答
1

如果您没有在 xml 中设置 GestureOverlayView 但直接在代码中,您可以使用以下与 RankoR 解决方案相同的方法:

mGestureOverlayView.setFadeEnabled(false);
mGestureOverlayView.setFadeOffset(0);

然后在 onGestureEnded 之后立即调用 onGesturePerformed 方法(在我的情况下为 8 毫秒)

于 2015-10-28T11:11:36.207 回答