zoukankan      html  css  js  c++  java
  • Android:ViewPager

    下面是一个实例,

    目录层次结构如下:

    main.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <android.support.v4.view.ViewPager
            android:id="@+id/pager"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            >
        </android.support.v4.view.ViewPager>
    
    </LinearLayout>
    

      view01.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="the first"
            />
        
        
    	
    </LinearLayout>
    

      view02.xml:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
        <TextView 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="the first"
            />
        
        
    	
    </LinearLayout>
    

      view03,view04略。

    MyPagerAdapter.java:

    package com.wyl.veiwpager;
    
    import java.util.List;
    
    import android.support.v4.view.PagerAdapter;
    import android.view.View;
    import android.view.ViewGroup;
    
    public class MyPagerAdapter extends PagerAdapter {
    	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() {
    		// TODO Auto-generated method stub
    		return viewList.size();
    	}
    
    	// 判断视图是否由对象产生
    	@Override
    	public boolean isViewFromObject(View arg0, Object arg1) {
    		// TODO Auto-generated method stub
    		return arg0 == arg1;
    	}
    
    	// 实例化页面
    	@Override
    	public Object instantiateItem(ViewGroup container, int position) {
    		// TODO Auto-generated method stub
    		container.addView(viewList.get(position));
    		return viewList.get(position);
    	}
    
    	// 删除页面
    	@Override
    	public void destroyItem(ViewGroup container, int position, Object object) {
    		// TODO Auto-generated method stub
    		container.removeView(viewList.get(position));
    	}
    
    	@Override
    	public CharSequence getPageTitle(int position) {
    		// TODO Auto-generated method stub
    		return titleList.get(position);
    	}
    }

    MainActivity:

    package com.wyl.veiwpager;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.support.v4.view.ViewPager;
    import android.view.View;
    
    public class MainActivity extends Activity {
    	private List<View> viewlist;
    	private ViewPager pager;
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.main);
    		//初始化viewlist
    		viewlist = new ArrayList<View>();
    		/*
    		 * 第二个参数为:布局文件的layoutId
    		 * 第三个参数:    父组件,一般写为null就可以了
    		 */
    		View view01 = View.inflate(this, R.layout.view01, null);
    		View view02 = View.inflate(this, R.layout.view02, null);
    		View view03 = View.inflate(this, R.layout.view03, null);
    		View view04 = View.inflate(this, R.layout.view04, null);
    		/*
    		 * 通过view对象作为ViewPager的数据源
    		 */
    		viewlist.add(view01);
    		viewlist.add(view02);
    		viewlist.add(view03);
    		viewlist.add(view04);
    		
    		//1 初始化ViewPager
    		pager= (ViewPager) findViewById(R.id.pager);
    		//2 创建PagerAdapter的适配器
    		MyPagerAdapter adapter = new MyPagerAdapter(viewlist);
    		//3 ViewPager加载适配器
    		pager.setAdapter(adapter);
    		
    	}
    
    	
    
    }
    

      效果图如下,

  • 相关阅读:
    (转载)SPSS之判别分析——决策树——以iris.sav为例
    (转载)SPSS之判别分析——以iris.sav为例
    python实现GA求二元函数最大值(来自知乎)
    (转载)Python在数学建模中的简单应用
    (转载)Python3 列表,数组,矩阵的相互转换
    【翻译自mos文章】在RHEL7/OL7上安装Oracle 12.1.0.2的server端或者client时,报须要&quot;compat-libstdc++&quot;包
    Material Design Support 8大控件介绍
    关于程序猿的技术发展讨论
    《C程序猿从校园到职场》带领大家从校园走向职场
    IE8下submit表单没反应
  • 原文地址:https://www.cnblogs.com/Sunnor/p/4723305.html
Copyright © 2011-2022 走看看