Android ArrayListAdapter<T>泛型类
来源:互联网 发布:软件代工 电影 编辑:程序博客网 时间:2024/05/29 19:45
/** * ArrayList Adapter泛型类 * Created by lezg on 2014/8/14. */public abstract class ArrayListAdapter<T> extends BaseAdapter { protected ArrayList<T> listItems; protected Context mContext; public ArrayListAdapter(Context context,ArrayList<T> datas) { this.mContext = context; this.listItems = datas; } @Override public int getCount() { if (listItems != null) { return listItems.size(); } else { return 0; } } @Override public Object getItem(int position) { return listItems == null ? null : listItems.get(position); } @Override public long getItemId(int position) { return position; } @Override public abstract View getView(int position, View convertView, ViewGroup viewGroup); public void setData(ArrayList<T> datas) { this.listItems = datas; notifyDataSetChanged(); }}
/** * 附近Poi Adapter类 * Created by lezg on 2014/8/14. */public class ListViewPoiAdapter extends ArrayListAdapter<MKPoiInfo> { private AppContext appContext; static class ListItemView { public TextView name; public TextView address; public TextView distance; } public ListViewPoiAdapter(Context context, ArrayList<MKPoiInfo> datas) { super(context, datas); this.appContext = AppContext.getInstance(); } @Override public View getView(int position, View convertView, ViewGroup viewGroup) { ListItemView listItemView; if (convertView == null) { convertView = LayoutInflater.from(mContext).inflate(R.layout.pois_info, null); listItemView = new ListItemView(); listItemView.name = (TextView) convertView.findViewById(R.id.name); listItemView.address = (TextView) convertView.findViewById(R.id.addr); listItemView.distance = (TextView) convertView.findViewById(R.id.distance); convertView.setTag(listItemView);//设置控件集到convertView } else { listItemView = (ListItemView) convertView.getTag(); } MKPoiInfo info = listItems.get(position); listItemView.name.setText(StringUtils.numberToString(position) + info.name); listItemView.address.setText("地址:" + info.address); GeoPoint geoPoint = new GeoPoint(info.pt.getLatitudeE6(), info.pt.getLongitudeE6()); double poiDistance = DistanceUtil.getDistance(appContext.locGeoPoint, geoPoint); String dist = StringUtils.formatDistance(poiDistance); listItemView.distance.setText(dist); return convertView; }}
0 0
- Android ArrayListAdapter<T>泛型类
- ListView三种适配器介绍ArrayListAdapter,SimpleAdapter,BaseAdapter
- Android List<T> 排序
- Android T-Toast统一管理类
- Android studio T-MVP模式
- Android -List<T>和ArrayList<T>(),发现你的真身
- t
- t
- t
- t
- T
- T
- t
- t
- t
- T
- t
- t
- 最短路复习
- Map集合总结
- 记一次C++与lua连接
- 【索引】Permutation::Exercises: Intermediate
- 关于cocos2dx下的ccrandom()的范围
- Android ArrayListAdapter<T>泛型类
- C++ 值传递 引用传递
- java 引用类型的概念
- Java线程
- 裸设备 1
- Flynn
- POJ-3685-Matrix
- Java输入输出流(1)
- hadoop2.2.0集群测试搭建(伪分布式集群测试)