<android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="fill_parent" android:layout_height="fill_parent" />
viewpager對應的layoutandroid
<LinearLayout android:id="@+id/ll_detail_overview" /> ...... </LinearLayout>
ViewPager mPager = (ViewPager) findViewById(R.id.viewPager); MyPagerAdapter mPagerAdapter = new MyPagerAdapter(參數); mPager.setAdapter(mPagerAdapter);
mPager.setOnPageChangeListener(mOnPageChangeListener);
MyPagerAdapter繼承PagerAdapter實現getCount()、isViewFromObject(View arg0, Object arg1)等方法,數組
MyPagerAdapter繼承FragmentPagerAdapter實現getItem(int arg0)、getCount()等方法。this
mPager.setCurrentItem(position);//設置當前頁spa
mOnPageChangeListener裏onPageSelected(int currentID)//獲得當前頁code
1,viewpager加載多個不一樣layout形式的頁blog
頁是用view顯示的繼承
//將要分頁顯示的View裝入數組中 LayoutInflater mLi = LayoutInflater.from(this); View view1 = mLi.inflate(R.layout.view1, null); View view2 = mLi.inflate(R.layout.view2, null); View view3 = mLi.inflate(R.layout.view3, null); final ArrayList<View> views = new ArrayList<View>(); views.add(view1); views.add(view2); views.add(view3)
views用MyPagerAdapter(參數)的形式傳遞過去,進行處理。get
頁是fragment顯示的it
FragmentManager fm = getSupportFragmentManager(); mPagerAdapter = new MyPagerAdapter(fm); //MyPagerAdapter中的方法,得到相應fragment,每一個fragment對應一個layout public Fragment getItem(int arg0) { Fragment fragment = null; switch (arg0) { case 0: fragment = new DetailFragment1(); break; case 1: fragment = new DetailFragment2(); break; } returen fragment; }
也能夠像views的方法以一個list參數的形式傳遞過去。io
2,viewpager加載一個layout形式的多頁
待續。。。
viewpager能呈現多頁滑動效果,試試哦!!