ViewPager是android v4包重一个类,看不到、摸不着,怪神秘的。总是忘记它的用户。下面记录一个从网上找到的最简单的例子,加深一下印象。
public class MainActivity extends Activity {
ViewPager pager;
List<View> views;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
pager = new ViewPager(this);
setContentView(pager);
views = new ArrayList<View>();
LayoutInflater mLi = LayoutInflater.from(this);
// View view1 = mLi.inflate(R.layout.view1, null);
TextView view1 = new TextView(this);
view1.setText("111111");
// 如果是布局文件,View可以通过一下方式得到
View view2 = mLi.inflate(R.layout.view2, null);
views.add(view2);
views.add(view1);
MyPagerAdapter adapter = new MyPagerAdapter();
pager.setAdapter(adapter);
pager.setCurrentItem(0);
}
class MyPagerAdapter extends PagerAdapter {
@Override
public int getCount() {
// TODO Auto-generated method stub
return views.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) {
container.addView(views.get(position));
return views.get(position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView(views.get(position));
}
}
}