【问题标题】:How to add Fragments in ViewPager from getView如何从 getView 在 ViewPager 中添加片段
【发布时间】:2016-03-29 04:21:16
【问题描述】:

谁能帮帮我,如何在 getView 中使用 FragmentStatePageAdapter 添加 ViewPager。

我正在使用 https://github.com/Diolor/Swipecards 库。我的要求是使用 FragmentStatePageAdapter 在每张卡片上添加 viewpager。但在实施 ViewPager 后,只有第一项包含 ViewPager 其他卡片不接受 Viewpager 。

请提出建议。

【问题讨论】:

    标签: android android-viewpager fragmentstatepageradapter


    【解决方案1】:

    就我而言,我没有使用任何库,这就是我使用它的方式。

    private static final int NUM_PAGES = NUMBER OF PAGES I NEED;
    
    private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter {
            public ScreenSlidePagerAdapter(FragmentManager fm) {
                super(fm);
            }
    
            @Override
            public Fragment getItem(int position) {
                return ScreenSlidePageFragment.create(position);
            }
    
            @Override
            public int getCount() {
                return NUM_PAGES;
            }
        }
    

    NUM_PAGES 决定了我们需要的页数。请检查您的代码。

    在适配器中,

     public static ScreenSlidePageFragment create(int pageNumber) {
            ScreenSlidePageFragment fragment = new ScreenSlidePageFragment();
            Bundle args = new Bundle();
            args.putInt(ARG_PAGE, pageNumber);
            fragment.setArguments(args);
            return fragment;
        }
    
        public ScreenSlidePageFragment() {
        }
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
    
            mPageNumber = getArguments().getInt(ARG_PAGE);
        }
    

    【讨论】:

    • 您好,兄弟,我们已经多次添加 FragmentStatePageAdapter 了。但不是在 ListView 中,意味着我们必须在 getView 中创建 viewpager,这样我们就不会在每个 item 处获取 view pager。感谢您的回复。
    猜你喜欢
    • 1970-01-01
    • 2016-09-17
    • 2013-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多