GestureDetector.OnGestureListener 与 GestureDetector.SimpleOnGestureListener 的目的是什么?
What is the purpose of GestureDetector.OnGestureListener versus GestureDetector.SimpleOnGestureListener?
如果 GestureDetector.SimpleOnGestureListener 做与 GestureDetector.OnGestureListener 相同的事情但不需要未使用的代码,那么 OnGestureListener 的意义何在?
我很少需要处理每种类型的手势,如果我确实需要这样做,我无论如何都可以在 SimpleOnGestureListener 中完成。
SimpleOnGestureListener与OnGestureListener不一样,是一个class实现了包括OnGestureListener在内的三个接口,主要是为了避免代码过多。正如您所说,您根本可以不使用 OnGestureListener,但它不能从框架中删除,因为 SimpleOnGestureListener 实现了它。
看到这个 https://developer.android.com/reference/android/view/GestureDetector.SimpleOnGestureListener.html
SimpleOnGestureListener 还实现了:
OnDoubleTapListener 和
OnContextClickListener
将方法放在三个不同的接口中是为了让它们更易于理解,因为它们具有不同的含义,他们不想让每个开发人员都必须实现不需要的方法。
但是当他们发现它们经常一起使用时,他们创建了一种帮助程序 class 以默认实现收集它们,这样他们就可以保持接口的分离和同时收集。使用这两种方法中的任何一种都没有区别。
如果 GestureDetector.SimpleOnGestureListener 做与 GestureDetector.OnGestureListener 相同的事情但不需要未使用的代码,那么 OnGestureListener 的意义何在?
我很少需要处理每种类型的手势,如果我确实需要这样做,我无论如何都可以在 SimpleOnGestureListener 中完成。
SimpleOnGestureListener与OnGestureListener不一样,是一个class实现了包括OnGestureListener在内的三个接口,主要是为了避免代码过多。正如您所说,您根本可以不使用 OnGestureListener,但它不能从框架中删除,因为 SimpleOnGestureListener 实现了它。 看到这个 https://developer.android.com/reference/android/view/GestureDetector.SimpleOnGestureListener.html
SimpleOnGestureListener 还实现了: OnDoubleTapListener 和 OnContextClickListener
将方法放在三个不同的接口中是为了让它们更易于理解,因为它们具有不同的含义,他们不想让每个开发人员都必须实现不需要的方法。 但是当他们发现它们经常一起使用时,他们创建了一种帮助程序 class 以默认实现收集它们,这样他们就可以保持接口的分离和同时收集。使用这两种方法中的任何一种都没有区别。