private ViewPager viewPager;
private List<String> picUrls;
private DisplayImageOptions options;
private Handler myHanler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
int position=viewPager.getCurrentItem();
position++;
viewPager.setCurrentItem(position);
sendEmptyMessageDelayed(0,1000);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager = findViewById(R.id.vp);
options=new DisplayImageOptions.Builder()
.cacheInMemory(true)//使用内存缓存
.cacheOnDisk(false)//使用磁盘缓存
.bitmapConfig(Bitmap.Config.RGB_565)//设置图片色彩模式
.imageScaleType(ImageScaleType.EXACTLY)//设置图片的缩放模式
.build();
//1.判断网络状态
if(NetStateUtil.isConn(this)){
MyTask myTask=new MyTask(new MyTask.Icallbacks() {
@Override
public void updateUiByjson(String jsonstr) {
Gson gson=new Gson();
ResltData resltData = gson.fromJson(jsonstr, ResltData.class);
//图片数据源
List<ResltData.DataBean> data = resltData.getData();
//图片路径
picUrls = new ArrayList<>();
for (int i = 0; i < data.size(); i++) {
String icon = data.get(i).getIcon();
picUrls.add(icon);
}
//设置适配器
viewPager.setAdapter(new MyVpAdapter());
viewPager.setCurrentItem(5*10);//设置默认显示的页面,使之可以向左滑动
myHanler.sendEmptyMessageDelayed(0,1000);
}
});
myTask.execute("https://www.zhaoapi.cn/ad/getAd");
}else{
NetStateUtil.showNoNetWorkDlg(this);
}
}
//无限
class MyVpAdapter extends PagerAdapter{
@Override
public int getCount() {//无限页
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
//0~Inter.maxValue
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView=new ImageView(MainActivity.this);
//得到图片url路径
String s = picUrls.get(position%picUrls.size());
//异步加载图片
ImageLoader.getInstance().displayImage(s,imageView,options);
//添加到容器中
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// super.destroyItem(container, position, object);
container.removeView((View)object);
}
}
private List<String> picUrls;
private DisplayImageOptions options;
private Handler myHanler=new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
int position=viewPager.getCurrentItem();
position++;
viewPager.setCurrentItem(position);
sendEmptyMessageDelayed(0,1000);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager = findViewById(R.id.vp);
options=new DisplayImageOptions.Builder()
.cacheInMemory(true)//使用内存缓存
.cacheOnDisk(false)//使用磁盘缓存
.bitmapConfig(Bitmap.Config.RGB_565)//设置图片色彩模式
.imageScaleType(ImageScaleType.EXACTLY)//设置图片的缩放模式
.build();
//1.判断网络状态
if(NetStateUtil.isConn(this)){
MyTask myTask=new MyTask(new MyTask.Icallbacks() {
@Override
public void updateUiByjson(String jsonstr) {
Gson gson=new Gson();
ResltData resltData = gson.fromJson(jsonstr, ResltData.class);
//图片数据源
List<ResltData.DataBean> data = resltData.getData();
//图片路径
picUrls = new ArrayList<>();
for (int i = 0; i < data.size(); i++) {
String icon = data.get(i).getIcon();
picUrls.add(icon);
}
//设置适配器
viewPager.setAdapter(new MyVpAdapter());
viewPager.setCurrentItem(5*10);//设置默认显示的页面,使之可以向左滑动
myHanler.sendEmptyMessageDelayed(0,1000);
}
});
myTask.execute("https://www.zhaoapi.cn/ad/getAd");
}else{
NetStateUtil.showNoNetWorkDlg(this);
}
}
//无限
class MyVpAdapter extends PagerAdapter{
@Override
public int getCount() {//无限页
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}
//0~Inter.maxValue
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView=new ImageView(MainActivity.this);
//得到图片url路径
String s = picUrls.get(position%picUrls.size());
//异步加载图片
ImageLoader.getInstance().displayImage(s,imageView,options);
//添加到容器中
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// super.destroyItem(container, position, object);
container.removeView((View)object);
}
}