FragmentStatePageAdapter:同时可见的多个项目 - 如何将特定页面居中?

Fra*_*e91 5 android android-fragments fragmentstatepageradapter

我想使用一个FragmentStatePageAdapter并同时显示3个项目.这可以通过覆盖getPageWidth()-Method 来完成:

    @Override
    public float getPageWidth(int position) {
        return 0.33f;
    }
Run Code Online (Sandbox Code Playgroud)

这非常有效.但我的问题是,我现在想要集中关注中心页面.目前左页是重点...

我已经看到了这个问题:

目前:当前寻呼机

期望: 期望的传呼机

期望2(如果滚动到结尾): 期望的第2页

你会建议什么?

Com*_*are 2

回顾一下评论线程:

  • 关于“焦点”的问题是由于应用了PageTransformer. PageTransformer似乎没有注意到getPageWidth()并且只会转换第一个可见页面。

  • 要将“第一”页面居中,您需要在该页面之前有一个不可见的页面。ViewPager始终从左侧开始,因此默认情况下会将第一页放在左侧。拥有不可见的首页会将第一个可见页面放在下一个插槽中。请注意,根据页面名册末尾所需的行为,您可能还需要一个或多个不可见页面。