<!--PagerTitleStrip(bottom) PagerTabStrip(top) 通常二選一去作--> <android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/viewpager"> <android.support.v4.view.PagerTabStrip android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tab" android:layout_gravity="top" /> </android.support.v4.view.ViewPager> public class MyPagerAdapter extends PagerAdapter{ /** * 通常都是3個頁面加載,左中右 */ /** * 成員屬性 */ private List<View>viewList; private List<String>titleList; /** * 構造函數 */ public MyPagerAdapter(List<View>viewList,List<String>titleList) { this.viewList = viewList; this.titleList = titleList; } /** * 返回的是頁卡的數量 */ @Override public int getCount() { return viewList.size(); } /** * 頁卡是不是對象 */ @Override public boolean isViewFromObject(View view, Object object) { return view == object; } /** * 實例化一個頁卡 */ @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(viewList.get(position)); return viewList.get(position); } /** * 銷燬一個頁卡 */ @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(viewList.get(position)); } /** * 設置標題 */ @Override public CharSequence getPageTitle(int position) { return titleList.get(position); } } public class ViewPagerActivity extends Activity implements ViewPager.OnPageChangeListener{ private ViewPager viewPager; private List<View>viewList; private PagerTabStrip tabStrip; private List<String>titleList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.acitivity_viewpager); viewPager = (ViewPager)findViewById(R.id.viewpager); tabStrip = (PagerTabStrip)findViewById(R.id.tab); viewList = new ArrayList<View>(); View view1 = View.inflate(this,R.layout.view1,null); View view2 = View.inflate(this,R.layout.view2,null); View view3 = View.inflate(this,R.layout.view3,null); View view4 = View.inflate(this,R.layout.view4,null); viewList.add(view1); viewList.add(view2); viewList.add(view3); viewList.add(view4); //爲viewpager頁卡設置標題 titleList=new ArrayList<String>(); titleList.add("第一頁"); titleList.add("第二頁"); titleList.add("第三頁"); titleList.add("第四頁"); //設置PagerTabStrip樣式 tabStrip.setBackgroundColor(Color.YELLOW); tabStrip.setTextColor(Color.RED); tabStrip.setDrawFullUnderline(false);//去掉直線 tabStrip.setTabIndicatorColor(Color.GREEN);//指示線 //建立PageAdapter的適配器 MyPagerAdapter adapter = new MyPagerAdapter(viewList,titleList); //加載適配器 viewPager.setAdapter(adapter); viewPager.setOnPageChangeListener(this); } //監聽器 @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { Toast.makeText(this,titleList.get(position),Toast.LENGTH_SHORT).show(); } @Override public void onPageScrollStateChanged(int state) { } }