二listview多条目加载
来源:互联网 发布:香港旅游 知乎 编辑:程序博客网 时间:2024/06/06 20:17
//Mactivity 需要封装
package com.example.cxk20170906;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ListView;import android.widget.TextView;import java.util.ArrayList;public class MainActivity extends AppCompatActivity { private ListView lv; Madapter madapter; ArrayList<Student> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取控件 lv=(ListView) findViewById(R.id.lv); //添加数据 initData(); //添加适配器 madapter= new Madapter(); //添加到listview lv.setAdapter(madapter); } private void initData() { //创建集合 list = new ArrayList<Student>(); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); list.add(new Student("张三",0)); list.add(new Student("李四","20",1)); } class Madapter extends BaseAdapter{ @Override public int getCount() { return list.size(); } @Override public Object getItem(int position) { return list.get(position); } @Override public long getItemId(int position) { return position; } //优化 @Override public View getView(int position, View convertView, ViewGroup parent) { int tipeid = list.get(position).getTipeid(); switch (tipeid){ case 0: ViewHolder1 vh1; if (convertView==null){ convertView= View.inflate(MainActivity.this,R.layout.list1,null); vh1 = new ViewHolder1(); vh1.tv1=(TextView) convertView.findViewById(R.id.tv1); convertView.setTag(vh1); }else{ vh1=(ViewHolder1) convertView.getTag(); } vh1.tv1.setText(list.get(position).getName()); break; case 1: ViewHolder2 vh2; if (convertView==null){ convertView=View.inflate(MainActivity.this,R.layout.list2,null); vh2 = new ViewHolder2(); vh2.tv2=(TextView) convertView.findViewById(R.id.tv2); vh2.tv3=(TextView) convertView.findViewById(R.id.tv3); convertView.setTag(vh2); }else{ vh2=(ViewHolder2) convertView.getTag(); } vh2.tv2.setText(list.get(position).getName()); vh2.tv3.setText(list.get(position).getAge()); break; } return convertView; } //返回条目的类型 @Override public int getItemViewType(int position) { return list.get(position).getTipeid(); } //返回条目的类型个数 @Override public int getViewTypeCount() { return 2; } } class ViewHolder1{ TextView tv1; } class ViewHolder2{ TextView tv2; TextView tv3; }}
阅读全文
0 0
- 二listview多条目加载
- ListView多条目加载
- ListView 多条目加载
- listview多条目加载
- ListView多条目加载
- listview多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- listview多条目加载
- Listview多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- ListView多条目加载
- Listview多条目加载
- ListView多条目加载
- UVA1252[Twenty Questions] 状态压缩动态规划模型
- [编程题] 序列交换
- 脑弄大开之——如何抛弃数字和运算符号只用计算机和函数进行运算
- 自己动手写java 字节流输入输出流
- 内部类
- 二listview多条目加载
- Android--(2)--详解线性布局(LinearLayout)
- Git常见命令总结
- The study of calling fuction in Python(20170907)
- nefu 84 五指山(扩展ou'ji'li)
- 应用服务器的调优
- 求解斐波那契数列的第n个数
- LeetCode11. Container With Most Water
- 群赛5总结----2017.9.7