activity_main.xml
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.view.PagerTabStrip //
android:id="@+id/tab"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.v4.view.ViewPager>
</RelativeLayout>
————————————————————————————————————————————-
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/zw4" 四个layout 只是图片不一样,其他都一样
android:id="@+id/imageView"
android:layout_above="@+id/button" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="zw4"
android:id="@+id/button"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
————————————————————————————————————————————————
public class MainActivity extendsAppCompatActivity {
private ArrayList<View> views = new ArrayList<View>();
private ViewPager viewPager;
private PagerTabStrip tab;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
viewPager = (ViewPager) findViewById(R.id.viewPager);
tab = (PagerTabStrip) findViewById(R.id.tab);
tab.setBackgroundResource(R.color.colorPrimaryDark);
tab.setTabIndicatorColor(Color.WHITE);
// tab.setTextSpacing(16);
tab.setTextColor(Color.WHITE);
tab.setDrawFullUnderline(false);
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, intpositionOffsetPixels) {}
@Override
public void onPageSelected(int position) {
switch (position){
case 0:
Toast.makeText(MainActivity.this, "刘备的", Toast.LENGTH_SHORT).show();
break;
case 1:
Toast.makeText(MainActivity.this, "关羽的", Toast.LENGTH_SHORT).show();
break;
case 2:
Toast.makeText(MainActivity.this, "张飞的", Toast.LENGTH_SHORT).show();
break;
case 3:
Toast.makeText(MainActivity.this, "赵云的", Toast.LENGTH_SHORT).show();
break;
}
}
@Override
public void onPageScrollStateChanged(int state) {}
});
viewPager.setCurrentItem(1);
viewPager.setPageMargin(1);
viewPager.setAdapter(new MyPagerAdapter(views));
}
/**
* 初始化要切换的视图对象
*/
private void initView(){
View v1 = getLayoutInflater().inflate(R.layout.layout1,null);
View v2 = getLayoutInflater().inflate(R.layout.layout2,null);
View v3 = getLayoutInflater().inflate(R.layout.layout3,null);
View v4 = getLayoutInflater().inflate(R.layout.layout4,null);
views.add(v1);
views.add(v2);
views.add(v3);
views.add(v4);
}
private static class MyPagerAdapter extends PagerAdapter{
private String[] titles = {"刘备的","关羽的","张飞的","赵云的"};
private ArrayList<View> views;
public MyPagerAdapter(ArrayList<View> views){
this.views = views;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
View v = views.get(position);
container.addView(v);
return v;
}
@Override
public void destroyItem(ViewGroup container, int position, Objectobject) {
//super.destroyItem(container,position, object);
System.out.println(object);
container.removeView(views.get(position));
}
@Override
public CharSequence getPageTitle(int position) {
// returnsuper.getPageTitle(position);
return titles[position]; //标题处
}
//要切换的页面总数
@Override
public int getCount() {
return views.size();
}
//验证view视图是否是指定对象
@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
}
}