Can I use view pager with views (not with fragments)

前端 未结 7 2006
情深已故
情深已故 2020-11-28 01:39

I am using ViewPager for swiping between Fragments, but can I use ViewPager to swipe between Views simple XML layout?

7条回答
  •  没有蜡笔的小新
    2020-11-28 02:11

    Use this example

    You can use a single XML layout nesting the children views.

     
    
            
    
                
                            
                
    
                
                            
                
    
        
    
    

    BUT... you need handle this with an adapter also. Here we return the finded view ID without inflate any other layout.

    class WizardPagerAdapter extends PagerAdapter {
    
        public Object instantiateItem(ViewGroup collection, int position) {
    
            int resId = 0;
            switch (position) {
            case 0:
                resId = R.id.page_one;
                break;
            case 1:
                resId = R.id.page_two;
                break;
            }
            return findViewById(resId);
        }
    
        @Override
        public int getCount() {
            return 2;
        }
    
        @Override
        public boolean isViewFromObject(View arg0, Object arg1) {
            return arg0 == arg1;
        }
    
        @Override public void destroyItem(ViewGroup container, int position, Object object) {
            // No super
        }
    }
    

    // Set the ViewPager adapter

    WizardPagerAdapter adapter = new WizardPagerAdapter();
    ViewPager pager = (ViewPager) findViewById(R.id.pager);
    pager.setAdapter(adapter);
    

提交回复
热议问题