viewpager_轮播

public class MainActivity extends Activity {

    private ViewPager pager;
    private int[] id={R.layout.layout1,R.layout.layout2,R.layout.layout3};
    private List<View> list=new ArrayList<View>();
    int con=1;
    private Handler handler=new Handler(){
        public void handleMessage(android.os.Message msg) {
            int what=msg.what+1;
            //第三个界面跳转
//            if (what<=3) {
//                  // startActivity(new Intent(MainActivity.this,Main2Activity.class));
//                   pager.setCurrentItem(what);
//                    handler.sendEmptyMessageDelayed(what, 1000);
//                    
//                }
            //自动轮播跳转
//           if (what==2) {
//               startActivity(new Intent(MainActivity.this,Main2Activity.class));
//               pager.setCurrentItem(what);
//                handler.sendEmptyMessageDelayed(what, 3000);
//                
//            }
           //无限轮播
//            if (what>=0) {
//                
//                pager.setCurrentItem(what);
//                handler.sendEmptyMessageDelayed(what, 1000);
//            }
        };
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        pager = (ViewPager) findViewById(R.id.pager);
        for (int i = 0; i <id.length; i++) {
            list.add(getView(id[i]));
        }
        pager.setAdapter(new My());
        pager.setCurrentItem(con);
        handler.sendEmptyMessageDelayed(con, 1000);

        
    }
    class My extends PagerAdapter{

        @Override
        public int getCount() {
            // TODO Auto-generated method stub
            return Integer.MAX_VALUE;
        }

        @Override
        public boolean isViewFromObject(View arg0, Object arg1) {
            // TODO Auto-generated method stub
            return arg0==arg1;
        }
        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            // TODO Auto-generated method stub
            View view=getView(id[position%3]);
            container.addView(view);
            return view;
        }
        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            // TODO Auto-generated method stub
            container.removeView((View) object);
        }
    }

    private View getView(int i) {
        // TODO Auto-generated method stub
        return View.inflate(MainActivity.this, i, null);
    }

    

}

 

posted @ 2017-08-15 11:45  沫髯小乐  阅读(198)  评论(2编辑  收藏  举报