我正在使用 ViewPager (http://developer.android.com/reference/android/support/v4/view/ViewPager.html) 来展示一些图片碎片,因为我希望支持缩放,所以我扩展了 ViewPager 并重写了以下方法:
onInterceptTouchEvent
下一步是确定图像是否被放大。如果它被放大了,我会让它处理事件,否则我会将事件传递给父类。我的主要问题,也是我的问题的核心,是确定当前片段与我的ViewPager之间进行通信的最佳和最有效的方法是什么?目前,当当前项更改时,我正在使用以下内容:
Fragment photoFrag = (Fragment) getAdapter().instantiateItem(this, getCurrentItem());
但是感觉在Fragment和ViewPage之间应该有更好的沟通方式,我可能漏掉了什么。
编辑:不好意思,我忘记提到我希望双向沟通,所以我希望Fragment能够与ViewPager通信,ViewPager也能与Fragment通信。我看到了一个示例(网址留在办公室),其中使用了接口类来在当前Fragment和ViewPager之间通信。因此,底层图像需要告诉ViewPager何时处理滚动,何时不需要处理,以及何时模拟滚动等。
我匆忙在Android Hangout上发布了这个问题。
谢谢。