多条目展示

来源:互联网 发布:js鼠标轨迹 编辑:程序博客网 时间:2024/06/09 20:58
import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.ListView;import android.widget.TextView;import com.nostra13.universalimageloader.core.ImageLoader;import java.util.ArrayList;public class MainActivity extends AppCompatActivity {    ;    private ArrayList<Goods> goodsList;    String imgUrl = "http://image.tianjimedia.com/uploadImages/2012/067/N80N0GUA36N0.jpg";    private ImageView img;    private ListView lv;    private ImageLoader imageLoaderInstance;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        lv = (ListView) findViewById(R.id.lv);        imageLoaderInstance = ImageLoader.getInstance();        initData();    }    private void initData() {        goodsList = new ArrayList<Goods>();        goodsList.add(new Goods("商品3", "23", 0));        goodsList.add(new Goods("商品4", "24", R.drawable.hu, 1));        goodsList.add(new Goods("商品1", "21", 0));        goodsList.add(new Goods("商品2", "22", R.drawable.hu, 1));        goodsList.add(new Goods("商品5", "25", 0));        goodsList.add(new Goods("商品6", "26", R.drawable.hu, 1));        goodsList.add(new Goods("商品21", "21", 0));        goodsList.add(new Goods("商品5", "25", 0));        goodsList.add(new Goods("商品22", "22", R.drawable.hu, 1));        goodsList.add(new Goods("商品23", "23", 0));        goodsList.add(new Goods("商品24", "24", R.drawable.hu, 1));        goodsList.add(new Goods("商品25", "25", 0));        goodsList.add(new Goods("商品26", "26", R.drawable.hu, 1));        goodsList.add(new Goods("商品31", "21", 0));        goodsList.add(new Goods("商品32", "22", R.drawable.hu, 1));        goodsList.add(new Goods("商品34", "24", R.drawable.hu, 1));        goodsList.add(new Goods("商品36", "26", R.drawable.hu, 1));        goodsList.add(new Goods("商品33", "23", 0));        goodsList.add(new Goods("商品35", "25", 0));        //listView设置Adapter        lv.setAdapter(new MAdapter());    }    class MAdapter extends BaseAdapter {        private final int TYPE0 = 0;//只有文字的条目        private final int TYPE1 = 1;//文字+图片的条目        @Override        public int getCount() {            return goodsList.size();        }        @Override        public Object getItem(int i) {            return goodsList.get(i);        }        @Override        public long getItemId(int i) {            return i;        }        //这个是返回条目种类的数量;        @Override        public int getViewTypeCount() {            return 2;        }        //返回条目类型;        @Override        public int getItemViewType(int position) {            return goodsList.get(position).getTypeId();        }        @Override        public View getView(int i, View view, ViewGroup viewGroup) {            int type = getItemViewType(i);            Holder0 holder0;            Holder1 holder1;            switch (type) {                case TYPE0:                    if (view == null) {                        holder0 = new Holder0();                        view = View.inflate(MainActivity.this, R.layout.lv_item_1, null);                        holder0.textView1 = (TextView) view.findViewById(R.id.textView1);                        holder0.textView2 = (TextView) view.findViewById(R.id.textView2);                        view.setTag(holder0);                    } else {                        holder0 = (Holder0) view.getTag();                    }                    holder0.textView1.setText(goodsList.get(i).getName());                    holder0.textView2.setText(goodsList.get(i).getPrice());                    break;                case TYPE1:                    if (view == null) {                        holder1 = new Holder1();                        view = View.inflate(MainActivity.this, R.layout.lv_item_2, null);                        holder1.textView1 = (TextView) view.findViewById(R.id.textView1);                        holder1.textView2 = (TextView) view.findViewById(R.id.textView2);                        holder1.imageView1 = (ImageView) view.findViewById(R.id.imageView1);                        view.setTag(holder1);                    } else {                        holder1 = (Holder1) view.getTag();                    }                    holder1.textView1.setText(goodsList.get(i).getName());                    holder1.textView2.setText(goodsList.get(i).getPrice());                    imageLoaderInstance.displayImage(imgUrl, holder1.imageView1);                    break;            }            return view;        }    }    class Holder0 {        private TextView textView1;        private TextView textView2;    }    class Holder1 {        private TextView textView1;        private TextView textView2;        private ImageView imageView1;    }}
原创粉丝点击