我使用的是ViewPager与FragmentStatePagerAdapter让一些片段之间的导航.
比方说,我有三个片段:A,B和C.ViewPager最初显示片段A,并允许您通过从右向左滑动,然后再次滑动到片段C来导航到片段B. 这允许以下导航路径:A <--> B <--> C.
我想要的是能够在片段A上从左向右滑动并让ViewPager显示片段C,即它表现为循环队列并允许 ... --> C <--> A <--> B <--> C <--> A <-- ...
我不希望片段在其他位置重复(即最终有三个以上的实例).
使用ViewPager可以实现这种包装功能吗?
这似乎是可能的,但我在确定如何实现ViewPager无限期页面时遇到一些麻烦.
我的用例是一个日历,一次显示一个月,但可以通过分页足够的时间切换到任何月份.
目前我只是extending PagerAdapter,并且MonthViews添加了3个自定义,如下所示:
@Override
public Object instantiateItem(View collection, int position) {
final MonthView mv = new MonthView(HistoryMonthActivity.this);
mv.setLayoutParams(new ViewSwitcher.LayoutParams(
android.view.ViewGroup.LayoutParams.MATCH_PARENT,
android.view.ViewGroup.LayoutParams.MATCH_PARENT));
mv.setSelectedTime(mTime);
((DirectionalViewPager) collection).addView(mv, 0);
return mv;
}
Run Code Online (Sandbox Code Playgroud)
我想一次只MonthView在内存中保存3 秒,这样MonthView当用户使用Tab键时,在每个数据库中显示数据都没有太大的延迟.因此,每次显示新页面时,我都需要删除一个MonthView并添加一个MonthView.如果有人对同样的功能有更好的想法,我很乐意听到它!
我正在考虑尝试使用FragmentStatePagerAdapter.
我想做的只是Android中的水平旋转木马.
如果我有3个屏幕AB和C,那么我希望我的ViewPager允许我像A < - > B,B < - > C,C < - > A一样移动.
GTalk for Android的对话可以像这样切换.三星的主屏幕和应用程序屏幕可以像这样切换.
AB和C是片段,我正在使用扩展FragmentPagerAdapter的适配器.所有片段都将包含webview.
谁能引导我朝着正确的方向前进?