public class MainActivity extends AppCompatActivity { String imag_url="http://result.eolinker.com/iYXEPGn4e9c6dafce6e5cdd23287d2bb136ee7e9194d3e9?uri=banner"; private ViewPager mVp; private ListView mLv; int anInt = 0; Handler handler=new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); mVp.setCurrentItem(anInt); anInt++; } }; private List<LunBoData.BannerBean> banner; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); vpLunbo();
new AsyncTask<String, Void, String>() { @Override protected String doInBackground(String... strings) { return new HttpURLUtil().getURLCon(imag_url); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); LunBoData boData = new Gson().fromJson(s, LunBoData.class); banner = boData.getBanner(); mVp.setAdapter(new MyPagerAdapter()); } }.execute(); } @SuppressLint("StaticFieldLeak") private void vpLunbo() { new Timer().schedule(new TimerTask() { @Override public void run() { handler.sendEmptyMessage(0); } },0,1000); } private void initView() { mVp = (ViewPager) findViewById(R.id.vp); mLv = (ListView) findViewById(R.id.lv); } private class MyPagerAdapter extends PagerAdapter { @Override public int getCount() { return Integer.MAX_VALUE; } @Override public Object instantiateItem(ViewGroup container, int position) { ImageView imageView = new ImageView(MainActivity.this); ImageLoader.getInstance().displayImage(banner.get(position%banner.size()).getImage_url(),imageView); container.addView(imageView); return imageView; } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView((View) object); } @Override public boolean isViewFromObject(View view, Object object) { return view==object; } } }