zoukankan      html  css  js  c++  java
  • 多条目加载和适配器

    package com.bwie.adapters;

    import android.content.Context;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.ImageView;
    import android.widget.TextView;

    import com.bwie.beans.News;
    import com.bwie.xlistviewdemo1.R;

    import java.util.ArrayList;

    /**
    * Created by Administrator on 2017/9/7.
    */

    public class MyBaseAdapter extends BaseAdapter {
    private Context context;
    private ArrayList<News> news;

    public MyBaseAdapter(ArrayList<News> news, Context context) {
    this.news = news;
    this.context = context;
    }

    @Override
    public int getCount() {
    return news.size();
    }

    @Override
    public Object getItem(int position) {
    return null;
    }

    @Override
    public long getItemId(int position) {
    return 0;
    }

    //多条目的数量
    @Override
    public int getViewTypeCount() {
    return 2;
    }

    @Override
    public int getItemViewType(int position) {

    return position%2;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder1 holder1;
    ViewHolder2 holder2;
    int rs = getItemViewType(position);//获得当前条目使用的是第几种条目
    News newsObj = news.get(position);//得到要展示的数据
    if(rs == 0){//第一种条目
    if (convertView == null){
    holder1 = new ViewHolder1();
    convertView = View.inflate(context, R.layout.lsitview_item_1,null);
    holder1.textView = (TextView) convertView.findViewById(R.id.mytitle);
    convertView.setTag(holder1);
    }else{
    holder1 = (ViewHolder1) convertView.getTag();
    }
    //赋值
    holder1.textView.setText(newsObj.getTitle());

    }else if(rs == 1){//第二种条目
    if (convertView == null){
    holder2 = new ViewHolder2();
    convertView = View.inflate(context, R.layout.listview_item_2,null);
    holder2.textView = (TextView) convertView.findViewById(R.id.mytitle);
    holder2.imageView = (ImageView) convertView.findViewById(R.id.imageView);
    convertView.setTag(holder2);
    }else{
    holder2 = (ViewHolder2) convertView.getTag();
    }
    //赋值
    holder2.textView.setText(newsObj.getTitle());
    //通过imageloader加载图片,显示在次行
    // ImageLoader.getInstance().displayImage(newsObj.getPicUrl(),holder2.imageView);
    }


    return convertView;
    }

    class ViewHolder1{
    TextView textView;
    }
    class ViewHolder2{
    TextView textView;
    ImageView imageView;
    }
    }

    //请求网络的工具类

    package com.bwie.xlistviewdemo1;

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

    /**
    * Created by Administrator on 2017/9/7.
    */

    public class NetWorkUtils {
    public String getJsonByUrlConnection(String jsonUrl){
    String str = "";
    try {
    URL url = new URL(jsonUrl);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    conn.setConnectTimeout(5000);
    conn.setReadTimeout(5000);
    int resCode = conn.getResponseCode();
    if(resCode == 200){
    InputStream is = conn.getInputStream();
    byte[] b = new byte[1024];
    int len = 0;
    while((len=is.read(b)) != -1){
    str += new String(b,0,len);
    }
    }

    } catch (MalformedURLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    return str;
    }
    }

  • 相关阅读:
    [LeetCode]String主题系列{第5,6题}
    [LeetCode]Math主题系列{第7,9,13,273题}
    [LeetCode]LinkedList主题系列{第2题}
    [LeetCode]HashTable主题系列{第3,36,49,94,136,138,187,202,204,205,290,347,389,409,438,451,463,500,508,560,594,599题}
    由于博客园的道路越来越像CSDN了,已经不再是当年的博客园了,决定退出博客园,后续建立自己的博客站点。
    Revit二次开发——非模态窗口的事件处理
    Revit二开---Schemachema扩展数据
    Revit二开---ViewFamily视图类型枚举
    CAD二开---扩展数据XData
    CAD二开---框选文字批量对齐
  • 原文地址:https://www.cnblogs.com/wsq110/p/7518904.html
Copyright © 2011-2022 走看看