無線輪播從網絡加載圖片 拉取數據get解析

MainActivity方法:
public class MainActivity extends AppCompatActivity {

private ViewPager vp;
private LinearLayout ly;
private List<String> imUrl;
private List<View> list;
private int num=0;
private int time=0;
private Handler handler=new Handler(){
    @Override
    public void handleMessage(Message msg) {
        super.handleMessage(msg);
        vp.setCurrentItem(time);
    }
};
private ListView list_view;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    vp = (ViewPager) findViewById(R.id.vp);
    ly = (LinearLayout) findViewById(R.id.ly);

    list_view = (ListView) findViewById(R.id.list_view);
    initData();
    vp.setAdapter(new Mydata());
    onData();
    vp.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int position) {
            list.get(position % imUrl.size()).setBackgroundResource(R.mipmap.btn_radio_on_holo_dark);
            list.get(num % imUrl.size()).setBackgroundResource(R.mipmap.btn_radio_on_disabled_holo_dark);
            num=position;
        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });
    Getjiexi("http://apis.juhe.cn/cook/query?key="
            + URLEncoder.encode("7f5fe6023517b145df5d07dfe6d266a6")
            +"&menu="+URLEncoder.encode("水煮魚"));



}
//無線輪播
private void onData() {
    new Thread(){
        @Override
        public void run() {
            super.run();
            while (true){
                SystemClock.sleep(3000);
                time++;
                handler.sendEmptyMessage(0);
            }
        }
    }.start();

}

private void initData() {
    imUrl = new ArrayList<>();
    imUrl.add("http://f2.kkmh.com/image/160511/chrrrrs4v.webp-w750.jpg");
    imUrl.add("http://f2.kkmh.com/image/170104/gio7ngxkf.webp-w750.jpg");
    imUrl.add("http://f2.kkmh.com/image/160222/03wkn35ez.webp-w750.jpg");
    list = new ArrayList<>();
    for (int i = 0; i < imUrl.size(); i++) {
        View view = new View(this);
        view.setLayoutParams(new LinearLayout.LayoutParams(50,50));
        list.add(view);
        if (i==0){
             list.get(i).setBackgroundResource(R.mipmap.btn_radio_on_holo_dark);
        }else {
           list.get(i).setBackgroundResource(R.mipmap.btn_radio_on_disabled_holo_dark);
        }
     ly.addView(list.get(i));
    }

}
class  Mydata extends PagerAdapter{

    @Override
    public int getCount() {
        return Integer.MAX_VALUE;
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view==object;
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView((View) object);
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {

        final ImageView imageView = new ImageView(MainActivity.this);
        new ImageLoder(new ImageLoder.ImageCall() {
            @Override
            public void callBitmap(Bitmap bitmap) {
                imageView.setImageBitmap(bitmap);

            }
        }).execute(imUrl.get(position % imUrl.size()) );
        container.addView(imageView);

        return imageView;

    }
}
//使用get解析數據

public void Getjiexi(String path){
new AsyncTask

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章