listview多条目加载
来源:互联网 发布:奥运村 避孕套 知乎 编辑:程序博客网 时间:2024/06/05 17:23
注意:需要配置获取网络权限,SD卡的读写权限
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.example.day07_listviewtiaomu.Bean.Goods;import com.nostra13.universalimageloader.core.ImageLoader;import java.util.ArrayList;import static android.view.View.inflate;public class MainActivity extends AppCompatActivity { //创建集合 ArrayList<Goods> goodsList = new ArrayList<>(); String imgUrl = "http://image.tianjimedia.com/uploadImages/2012/067/N80N0GUA36N0.jpg"; //添加数据 private ListView lv; public ImageLoader instance; private Holder1 holder1; private Holder2 holder2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取控件 lv = (ListView) findViewById(R.id.lv); //imageloader图片控件 instance = ImageLoader.getInstance(); //添加数据 initdata(); } //添加数据的方法 private void initdata() { goodsList.add(new Goods("商品1", "21", 0)); goodsList.add(new Goods("商品3", "23", 0)); goodsList.add(new Goods("商品4", "24", R.drawable.hu, 1)); 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)); //数据给适配器 lv.setAdapter(new Myadpater()); } //适配器 private class Myadpater extends BaseAdapter { //返回的条目类型 @Override public int getItemViewType(int position) { return goodsList.get(position).getTypeid(); } //子布局的数量 @Override public int getViewTypeCount() { return 2; } @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 View getView(int i, View view, ViewGroup viewGroup) { //首先获取bean类当中条目类型 int typeid = goodsList.get(i).getTypeid(); switch (typeid) { case 0: Holder1 holder1 = null; if (view == null) { holder1 = new Holder1(); view = inflate(MainActivity.this, R.layout.datatext1, null); holder1.tv1 = view.findViewById(R.id.text1); holder1.tv2 = view.findViewById(R.id.text2); view.setTag(holder1); } else { holder1 = (Holder1) view.getTag(); } //赋值 holder1.tv1.setText(goodsList.get(i).getName()); holder1.tv2.setText(goodsList.get(i).getPrice()); break; case 1: Holder2 holder2 = null; if (view == null) { holder2 = new Holder2(); view = View.inflate(MainActivity.this, R.layout.datatext2, null); holder2.text1 = view.findViewById(R.id.textview1); holder2.text2 = view.findViewById(R.id.textview2); holder2.img = view.findViewById(R.id.img); view.setTag(holder2); } else { holder2 = (Holder2) view.getTag(); } holder2.text1.setText(goodsList.get(i).getName()); holder2.text2.setText(goodsList.get(i).getPrice()); //使用Imageloader给图片传图 instance.displayImage(imgUrl, holder2.img); break; } return view; } } //条目1 class Holder1 { TextView tv1, tv2; } //条目2 class Holder2 { TextView text1, text2; ImageView img; }}
阅读全文
0 0
- ListView多条目加载
- ListView 多条目加载
- listview多条目加载
- ListView多条目加载
- listview多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- listview多条目加载
- Listview多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- Listview多条目加载
- ListView多条目加载
- ListView多条目加载
- python 协程
- 静态语言和动态语言的区别
- HDU 1827&&3072 强连通分量 解题报告
- 开闭原则理解
- Android开发vivo x20手机问题
- listview多条目加载
- Android --- Service 应用
- 第二十八天 数据库的数据类型
- leetcode 6—— zjgzag conversion
- 六、音视频同步
- JavaScript 之复选框
- Android_OkHttp介绍与使用
- 关于卷积网络的模型融合---使用softmax实现
- Python---list合并