我正在研究循環ViewPager,並且我實現了這個完全解決方案(https://stackoverflow.com/a/12965787/1083564)。如何在ViewPager上手動smoothScrollTo()片段視圖
唯一缺失的是,當我使用setCurrentItem(int i,bol b)方法時,我需要smoothScroll,它立即轉到像素限制,而不使用smoothScroll。
我已經有訪問使用此方法,使用下面的代碼:
package android.support.v4.view;
import android.content.Context;
import android.util.AttributeSet;
public class MyViewPager extends ViewPager {
public MyViewPager(Context context) {
super(context);
}
public MyViewPager(Context context, AttributeSet attr) {
super(context, attr);
}
public void smoothScrollTo(int x, int y, int velocity) {
super.smoothScrollTo(x, y, velocity);
}
}
,但我無法弄清楚在何處以及如何使用它。我有我需要用我的ViewPager的setOnPageChangeListener這裏面的代碼運行平穩像素數:
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
Log.d("viewpager", positionOffsetPixels+"");
}
它去之前爲0,瞬間,因爲setCurrentItem的,我有個像素的左值達到0(向左)或x(向右,取決於屏幕)。我不知道我怎麼能得到這個x號碼。
PS:我認爲這個解決方案是IMDB應用程序使用的一個非常好的解決方案。你可以看到這個滾動從第一個到最後一個,但沒有刪除你的手指(用2個手指來做)。您會看到ViewPager左側顯示「白色限制」。唯一的區別是他們知道如何在使用setCurrentItem之後平滑滾動。
如果您需要更多的信息,請提問!謝謝!
你能張貼一些數字來幫助我們理解你想要的嗎? – VinceStyling 2014-09-11 03:56:36