- 智能手机迅速发展的今天如果还在用button或其他控件的listener进行页面跳转,那就out了。viewpager控件的滑动切换页面功能,是如今代替intent(mainactivity.this,x_activity.class)构造函数的主流! 来看看该如何实现吧:
- package com.example.testviewpage_1;
- /**
- * @author harvic
- * @date 2014.8.9
- */
- import java.util.ArrayList;
- import java.util.List;
- import java.util.zip.Inflater;
- import android.app.Activity;
- import android.os.Bundle;
- import android.support.v4.view.PagerAdapter;
- import android.support.v4.view.ViewPager;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- public class MainActivity extends Activity {
- private View view1, view2, view3;
- private ViewPager viewPager; //对应的viewPager
- private List<View> viewList;//view数组
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- viewPager = (ViewPager) findViewById(R.id.viewpager);
- LayoutInflater inflater=getLayoutInflater(); // 查找布局文件的方法,类似findviewbyid
- view1 = inflater.inflate(R.layout.layout1, null);
- view2 = inflater.inflate(R.layout.layout2,null);
- view3 = inflater.inflate(R.layout.layout3, null);
- viewList = new ArrayList<View>();// 将要分页显示的View装入数组中
- viewList.add(view1);
- viewList.add(view2);
- viewList.add(view3);
- PagerAdapter pagerAdapter = new PagerAdapter() {
- @Override
- public boolean isViewFromObject(View arg0, Object arg1) {
- // TODO Auto-generated method stub
- return arg0 == arg1;
- }
- @Override
- public int getCount() {
- // TODO Auto-generated method stub
- return viewList.size();
- }
- @Override
- public void destroyItem(ViewGroup container, int position,
- Object object) {
- // TODO Auto-generated method stub
- container.removeView(viewList.get(position));
- }
- @Override
- public Object instantiateItem(ViewGroup container, int position) {
- // TODO Auto-generated method stub
- container.addView(viewList.get(position));
- return viewList.get(position);
- }
- };
- viewPager.setAdapter(pagerAdapter);
- }
- }
- 本人也是android新人,请大家多多指教。