1. 程式人生 > >viewpager圖片輪播

viewpager圖片輪播

public class MainActivity extends AppCompatActivity {
    private List<Bean.TuijianBean.ListBean> list;
    private List<String> list1;
    private DisplayImageOptions options;
    private Handler handler=new Handler(){
        @Override
public void handleMessage(Message msg) {
            super
.handleMessage(msg); int position=vp.getCurrentItem(); position++; vp.setCurrentItem(position); sendEmptyMessageDelayed(0,1000); } }; private ViewPager vp; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main
); vp = findViewById(R.id.vp); options = new DisplayImageOptions.Builder() .cacheInMemory(true)//使用記憶體快取 .cacheOnDisk(false)//使用磁碟快取 .bitmapConfig(Bitmap.Config.RGB_565)//設定圖片色彩模式 .imageScaleType(ImageScaleType.EXACTLY)//設定圖片的縮放模式 .build(); sss(); } private void
sss(){ MyTask myTask=new MyTask(new MyTask.Icallback() { @Override public void updateUiByjson(String string) { Log.d("zzz","---"+string); Gson gson=new Gson(); Bean bean = gson.fromJson(string, Bean.class); list = bean.getTuijian().getList(); list1 = new ArrayList<>(); for (int i = 0; i< list.size(); i++){ String[] split = list.get(i).getImages().split("\\|");//圖片分割 // String icon= list.get(i).getImages(); Log.d("zzz","---"+split[0]); list1.add(split[0]);//轉義 } vp.setAdapter(new MyAdapter()); vp.setCurrentItem(5*10); handler.sendEmptyMessageDelayed(0,1000); } }); myTask.execute("https://www.zhaoapi.cn/ad/getAd"); } class MyAdapter extends PagerAdapter{ @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 iw=new ImageView(MainActivity.this); String s=list1.get(position%list1.size()); ImageLoader.getInstance().displayImage(s,iw,options ); container.addView(iw); return iw; } @Override public void destroyItem(ViewGroup container, int position, Object object) { //super.destroyItem(container, position, object); container.removeView((View) object); } } }