带标题的 ViewPager 小实例

来源:互联网 发布:油漆调色软件下载 编辑:程序博客网 时间:2024/05/17 22:19



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;       }    }}


0 0
原创粉丝点击