ArrayAdapter、SimpleAdapter和BaseAdapter示例代码
2016-03-07 00:52
477 查看
import android.content.Context; import android.util.Pair; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.SimpleAdapter; import android.widget.TextView; import com.example.rex.mytest.R; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * Created by Rex on 2016/3/7. */ public class Sample { protected void testAdapter() { Context context = null; final String[] data = new String[]{"1", "2", "3", "4", "5"}; // ---------------------------------------ArrayAdapter----------------------------------------- ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(context, R.layout.dialog_list_item, data);//data是数组或List集合 // ---------------------------------------SimpleAdapter----------------------------------------- List<Map<String, Object>> mData = new ArrayList<Map<String, Object>>(); for (int i = 0; i < 10; i++) { Map<String, Object> item = new HashMap<String, Object>(); item.put("image", R.drawable.star); item.put("title", "title-" + i); item.put("text", "text-" + i); mData.add(item); } SimpleAdapter simpleAdapter = new SimpleAdapter(context, mData, R.layout.list_item, new String[]{"image", "title", "text"}, new int[]{R.id.image, R.id.title, R.id.text}); // ---------------------------------------BaseAdapter is abstract class----------------------------------------- class MyAdapter extends BaseAdapter { private Context context; private List<Pair<String, String>> datas; public MyAdapter(Context context, List<Pair<String, String>> list) { this.context = context; datas = list; } @Override public int getCount() { return datas.size(); } @Override public Object getItem(int position) { return datas.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = View.inflate(context, R.layout.list_item, null); } TextView title = (TextView) convertView.findViewById(R.id.title); TextView text = (TextView) convertView.findViewById(R.id.text); Pair<String, String> pair = datas.get(position); title.setText(pair.first); text.setText(pair.second); return convertView; } } } }
相关文章推荐
- 基于mybatis+spring的读写分离
- C/C++内存分布与变量初始化顺序
- Java中的HashTable和HashMap
- Python学习路程day7
- Java数据库连接池
- 用python实现模拟登录人人网
- Java入门:JDK与Eclipse之类的集成开发工具的关系
- java 自定义异常Demo
- Java中质数问题
- 传z播客 刘意_2015年Java基础视频笔记(day18~day20(2016年3月20日14:36:05)
- php计算时间差
- 软件测试作业2:读代码回答问题
- 操作系统用C语言模拟基于时间片进程调度程序
- 《Effective C++》学习笔记——条款41
- eclipse 运行时异常 Unsupported major.minor version 52.0 原因
- 代码思路跟我的不一样,感觉很好
- python数据类型之字符串
- Python List 删除元素
- 语言基础:C#运算符
- Zend Framework教程之前端控制器Zend_Controller_Front用法详解