package com.example.myviewpager;
import android.graphics.BitmapFactory;
import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private ViewPager vp;
private List list;
private int i = 1000;
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
vp.setCurrentItem(i);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vp = (ViewPager) findViewById(R.id.vp);
//设置适配器
vp.setAdapter(new MyAdapter());
//定时轮播
autoPlay();
//添加网络图片地址
inDect();
}
private void inDect() {
list = new ArrayList();
list.add("http://m4.biz.itc.cn/pic/new/n/11/88/Img6188811_n.jpg");
list.add("http://www.gog.com.cn/pic/0/12/67/54/12675421_837256.jpg");
list.add("http://p1.so.qhimgs1.com/t014a25fa412c88726d.jpg");
list.add("http://p1.so.qhmsg.com/t019c7732a788aed606.jpg");
}
//定时的轮播
private void autoPlay(){
new Thread(){
@Override
public void run() {
super.run();
while (true){
SystemClock.sleep(3000);
i++;
handler.sendEmptyMessage(0);
}
}
}.start();
}
private class MyAdapter extends PagerAdapter {
private DisplayImageOptions options;
public MyAdapter() {
//构建图片的缓存选项
options = new DisplayImageOptions.Builder()
// .cacheInMemory(true)
// .cacheOnDisk(true)
.build();
}
@Override
public int getCount() {
return Integer.MAX_VALUE;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
//添加图片
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView = new ImageView(MainActivity.this);
//加载图片
ImageLoader.getInstance().displayImage((String) list.get(position % list.size()), 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);
}
}
}
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
//单纯的使用 加载图片
ImageLoaderConfiguration configuration = ImageLoaderConfiguration
.createDefault(this);
ImageLoader.getInstance().init(configuration);
}
}