无线轮播

package com.bwie.moni2;

import android.content.Intent;
import android.os.Handler;
import android.os.Message;
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.Button;
import android.widget.ImageView;
import android.widget.RadioGroup;

import com.bwie.moni2.shu.Shu;
import com.bwie.moni2.tiao.Hepler1;
import com.bwie.moni2.tiao.New;
import com.bwie.moni2.tiao.Tiao;
import com.bwie.moni2.xinwen.Xinwen;
import com.google.gson.Gson;
import com.squareup.picasso.Picasso;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity {


    private RadioGroup group;
    private ViewPager pager;
    private List<Lun.AbnersBean> list=new ArrayList<>();
    private String dataul="http://ftp6252741.host709.zhujiwu.me/abnerming/banner.txt";
    private Handler handler = new Handler() {

        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            if (msg.what == 0) {
                int i = pager.getCurrentItem();
                if (i < list.size() - 1) {
                    i++;
                } else {
                    i = 0;
                }
                pager.setCurrentItem(i);
                handler.sendEmptyMessageDelayed(0, 2000);
            }
        }
    };

    private Button xin;
    private Button tiao;
    private Button shu;
    private MyAdapter myAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        pager = (ViewPager) findViewById(R.id.pagee);
        group = (RadioGroup) findViewById(R.id.yuan);
        xin = (Button) findViewById(R.id.xinwen);
        tiao = (Button) findViewById(R.id.tiao);
        shu = (Button) findViewById(R.id.shuju);
        //新闻页面
        xin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this, Xinwen.class);
                startActivity(intent);

            }
        });
        //多条目页面
        tiao.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this, Tiao.class);
                startActivity(intent);

            }
        });
        //数据页面
        shu.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(MainActivity.this, Shu.class);
                startActivity(intent);

            }
        });

        doHttp();
        myAdapter = new MyAdapter();
        pager.setAdapter(myAdapter);
        handler.sendEmptyMessageDelayed(0, 2000);

        pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
                group.check(group.getChildAt(position % list.size()).getId());
            }

            @Override
            public void onPageSelected(int position) {

            }

            @Override
            public void onPageScrollStateChanged(int state) {

            }
        });
    }

    class MyAdapter extends PagerAdapter {
        @Override
        public int getCount() {
            return list.size();
        }

        @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);
            Picasso.with(MainActivity.this).load(list.get(position).getImage()).into(imageView);
            container.addView(imageView);
            return imageView;
        }

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

    private void doHttp() {
       new LunHepler().get(dataul).result(new LunHepler.HttpListener() {

   @Override
           public void success(String data) {
              Lun  bean = new Gson().fromJson(data, Lun.class);
               list = bean.getAbners();
              myAdapter.notifyDataSetChanged();
           }
       });
    }
}

====================================Bean类

package com.bwie.moni2;

import java.util.List;

public class Lun {

    private List<AbnersBean> abners;

    public List<AbnersBean> getAbners() {
        return abners;
    }

    public void setAbners(List<AbnersBean> abners) {
        this.abners = abners;
    }

    public static class AbnersBean {

        private String image;

        public String getImage() {
            return image;
        }

        public void setImage(String image) {
            this.image = image;
        }
    }
}

========================Hepler

package com.bwie.moni2;

import android.os.Handler;
import android.os.Message;

import com.bwie.moni2.tiao.Hepler1;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class LunHepler {
    public LunHepler() {
    }

    public LunHepler get(final String url) {
        new Thread() {
            @Override
            public void run() {
                super.run();
                try {
                    URL url1 = new URL(url);
                    HttpURLConnection connection = (HttpURLConnection) url1.openConnection();
                    connection.setRequestMethod("GET");
                    connection.setReadTimeout(5000);
                    connection.connect();

                    int i = connection.getResponseCode();
                    if (i == HttpURLConnection.HTTP_OK) {
                        InputStream is = connection.getInputStream();
                        String data = convert2sString(is);
                        Message message = Message.obtain();
                        message.obj = data;
                        handler.sendMessage(message);
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }.start();
        return this;
    }

    private Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            String data = (String) msg.obj;
            linstener.success(data);
        }
    };

    private HttpListener linstener;
    public void result(HttpListener linstener){
        this.linstener=linstener;

    }


    public interface HttpListener{
        void success(String data);
    }
    private String convert2sString(InputStream is) throws IOException {
        ByteArrayOutputStream ia = new ByteArrayOutputStream();
        int len = -1;
        byte[] buffer = new byte[512];
        while ((len = is.read(buffer)) != -1) {
            ia.write(buffer, 0, len);
        }
        return new String(ia.toByteArray());
    }
}

猜你喜欢

转载自blog.csdn.net/qq_43131935/article/details/82798918