周01

public class Second extends Activity {
    private ListView listview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second_main);
        //获取控件
        listview = findViewById(R.id.listview01);
        AsyncTask<Void, Void, String> asyncTask = new AsyncTask<Void, Void, String>() {
            @Override
            protected String doInBackground(Void... voids) {
                String path = "http://api.expoon.com/AppNews/getNewsList/type/1/p/1";
                //获取一个路径
                try {
                    URL url = new URL(path);
                    HttpURLConnection conenction = (HttpURLConnection) url.openConnection();
                    //设置提交方式
                    conenction.setRequestMethod("GET");
                    //设置延时
                    conenction.setReadTimeout(5 * 1000);
                    conenction.setConnectTimeout(5 * 1000);
                    //s获取响应码
                    int responseCode = conenction.getResponseCode();
                    //判断是否有数据
                    if (responseCode == 200) {
                        //拿到通过流传回来的数据
                        InputStream inputStream = conenction.getInputStream();
                        //转换成字符
                        String s = StreamToString(inputStream, "utf-8");
                        Log.i("你好", s);
                        return s;
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return null;

            

            @Override
            protected void onPostExecute(String s) {
                super.onPostExecute(s);
                Gson gson = new Gson();
                javaBeanOne javaBeanOne = gson.fromJson(s, javaBeanOne.class);
                final List<javaBeanOne.DataBean>  data = javaBeanOne.getData();
                final MyBaseAdapter   myBaseAdapter = new MyBaseAdapter(Second.this, data);
                DaoHelper daoHelper = new DaoHelper(Second.this);
                //添加数据库
/*
                for(int i=0;i<data.size();i++){
                    daoHelper.insert(data.get(i).getNews_title(),data.get(i).getPic_url());
                }*/
                listview.setAdapter(myBaseAdapter);

                listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                    @Override
                    public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                        data.remove(i);
                        myBaseAdapter.notifyDataSetChanged();
                    }
                });
                //查询数据库
                List<User> select = daoHelper.select();
            }
        };
        asyncTask.execute();

    }

    public String StreamToString(InputStream input, String charset) {
        try {
            InputStreamReader inputStreamReader = new InputStreamReader(input, charset);
            BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
            StringBuilder builder = new StringBuilder();
            String string;
            while ((string = bufferedReader.readLine()) != null) {
                builder.append(string);
            }
          Log.i("-----",builder.toString());
            return builder.toString();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

}

另外一个类

public class Imageutils {
   // ImageView imageview;

    public void ImagePath(final String path, final ImageView imageview){

        AsyncTask<Void, Void, Bitmap> asyncTask = new AsyncTask<Void, Void, Bitmap>() {
            @Override
            protected Bitmap doInBackground(Void... voids) {
                //获取一个路径
                try {
                    URL url = new URL(path);
                    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                    //设置提交方式
                    connection.setRequestMethod("GET");
                    //设置延时
                    connection.setReadTimeout(5 * 1000);
                    connection.setConnectTimeout(5 * 1000);
                    //s获取响应码
                    int responseCode = connection.getResponseCode();
                    //判断是否有数据
                    if (responseCode == 200) {
                        //拿到通过流传回来的数据
                        InputStream inputStream = connection.getInputStream();
                        Bitmap bit = BitmapFactory.decodeStream(inputStream);
                        return bit;
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return null;
            }

            @Override
            protected void onPostExecute(Bitmap bitmap) {
                super.onPostExecute(bitmap);
                imageview.setImageBitmap(bitmap);
            }
        };
        asyncTask.execute();
    }
}

适配器

public class MyBaseAdapter extends BaseAdapter{
    Context context;
    List<javaBeanOne.DataBean> data;
    private viewHolder holder;
    Imageutils imageutils = new Imageutils();
    public MyBaseAdapter(Context context, List<javaBeanOne.DataBean> data) {
       this.context  =context;
        this.data =data;
    }
    @Override
    public int getCount() {
        return data.size();
    }
    @Override
    public Object getItem(int i) {
        return data.get(i);
    }
    @Override
    public long getItemId(int i) {
        return i;
    }
    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        if(view == null){
            view = View.inflate(context, R.layout.item_listview,null);
            holder = new viewHolder();
            holder.text01 = view.findViewById(R.id.textviewurl);
            holder.image01 = view.findViewById(R.id.imageurl);
            view.setTag(holder);
        }else{
            holder = (viewHolder) view.getTag();
        }
        //设置数据
        holder.text01.setText(data.get(i).getNews_title());
        new Imageutils().ImagePath(data.get(i).getPic_url(),holder.image01);
        return view;
    }
    class viewHolder{
        TextView text01;
        ImageView image01;
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值