如果GestureDetector.SimpleOnGestureListener与GestureDetector.OnGestureListener做同样的事情,但不需要使用未使用的代码,那么OnGestureListener有什么意义呢?
我很少需要处理所有类型的手势,如果我确实需要这样做,我仍然可以在SimpleOnGestureListener中执行此操作。
答案 0 :(得分:1)
SimpleOnGestureListener与OnGestureListener不同,它是一个实现三个接口的类,包括OnGestureListener,主要原因是避免过多的代码。正如你所说,你根本不能使用OnGestureListener,但它无法从框架中消除,因为SimpleOnGestureListener实现了它。 请参阅此https://developer.android.com/reference/android/view/GestureDetector.SimpleOnGestureListener.html
SimpleOnGestureListener还实现: OnDoubleTapListener和 OnContextClickListener
并将这些方法放在三个不同的界面中是为了使它们更容易理解,因为它们具有不同的含义,它们并不希望每个开发人员都需要实现不需要的方法。 但是当他们发现它们经常被一起使用时,他们创建了一种帮助类,它们使用默认实现来收集它们,这样他们就可以保持接口分离并同时收集。使用这两种方法中的任何一种都没有区别。