在项目的Tab0ViewFragment中使用ListView嵌套ViewPager实现广告效果和信息列表效果
因为ListView和ViewPager都有滑动事件,如果不做特殊处理的话,ViewPager的滑动是不顺畅的
故重写了ListView
public class MyListView extends ListView {
public MyListView(Context context) {
super(context);
}
public MyListView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public boolean onInterceptTouchEvent(MotionEvent ev) {
// 第0项的时候,即HeadView,不拦截事件,让子View去处理,本项目由ViewPager处理,即左右滑动
if (MyListView.this.getSelectedItemPosition() <= 0) {
return false;
}
return super.onInterceptTouchEvent(ev);
}
}
ViewPager的适配器继承FragmentPagerAdapter实现
public class AdsTopPagerAdapter extends FragmentPagerAdapter
ListView的适配器继承BaseAdapter实现
public class MainTabView0ListAdapter extends BaseAdapter
本次抽象了一个Product的实体类,要面向对象嘛
本次使用的是网络图片的,所以也实现了网络下载,保存sd卡的功能
因为中兴手机的某些手机通过Environment.getExternalStoragePublicDirectory获取不到内置的sdcard目录,通过文件夹模式查看的时候,看到他的路径是/mnt/sdcard-ext,或者/mnt/sdcard2,参见FileUtil
图片管理的参见BitmapUtil
下载图片使用异步任务,参见LoadImage
源码下载地址