如上 常见的一个页面,最外面是一个ViewPager,在它之上放一个GridView布局,然后每个GridView上放一个只有图片和文字的布局,
由于ViewPager出现在第三方包V4包里面,引用的时候要引用第三方包来弹出次控件:
<android.support.v4.view.ViewPager/>如下:
其中ViewPager左右滑动时,其实只有一个界面,滑动到另一个界面时,就销毁前面那个界面,当你滑回去的时候,它又会销毁滑出去的界面,
// 将两个网格布局的界面添加到滑动界面(ViewPager)
ArrayList<View> listAdapter = new ArrayList<View>();
MyPagerAdapterToTitle pagerAdapter = new MyPagerAdapterToTitle();
listAdapter.add(gridViewOne);
listAdapter.add(gridViewTwo);
pagerAdapter.setData(listAdapter);
// 添加左右滑动界面的适配器
mViewPager.setAdapter(pagerAdapter);
/**
* 自定义滑动界面PagerAdapter的适配器
*/
public class MyPagerAdapterToTitle extends PagerAdapter {
private ArrayList<View> list = new ArrayList<View>();
public int getCount() {
return list.size();
}
public void setData(ArrayList<View> lists) {
list = lists;
notifyDataSetChanged();
}
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}
//添加一个View
public Object instantiateItem(ViewGroup container, int position) {
View v = list.get(position);
container.addView(v);
return v;
}
//销毁一个View
public void destroyItem(ViewGroup container, int position, Object object) {
View v = list.get(position);
container.removeView(v);
}
}