Android(安卓)GridView
16lz
2021-01-26
/** * 附近POI page Adapter类 * Created by Lezg on 2014/5/14. */public class GridViewPoiAdapter extends BaseAdapter{ private Resources mResources; private LayoutInflater inflater; private ArrayList<NearByPoi> gridItems; static class GridItemView{ public TextView tvPoi; } public GridViewPoiAdapter(Context context,ArrayList<NearByPoi> data){ this.gridItems = data; this.mResources = context.getResources(); this.inflater = LayoutInflater.from(context); } public int getCount(){ return gridItems.size(); } public Object getItem(int position){ return gridItems.get(position); } public long getItemId(int position){ return position; } public View getView(int position,View convertView,ViewGroup parent){ GridItemView gridItemView; if(convertView == null){ convertView = inflater.inflate(R.layout.tv_nearby_poi,null); gridItemView = new GridItemView(); gridItemView.tvPoi = (TextView)convertView.findViewById(R.id.tv_NearByPoi); convertView.setTag(gridItemView); }else { gridItemView = (GridItemView)convertView.getTag(); } NearByPoi nearByPoi = gridItems.get(position); gridItemView.tvPoi.setText(nearByPoi.getPoiName()); Drawable image = mResources.getDrawable(nearByPoi.getPoiImageResource()); image.setBounds(0,0,image.getMinimumWidth(),image.getMinimumHeight()); gridItemView.tvPoi.setCompoundDrawables(null,image,null,null); return convertView; }}
private void initGridView() { GridView gv = (GridView) findViewById(R.id.gv_pois); gv.setSelector(new ColorDrawable(Color.TRANSPARENT)); final String[] poiName = getResources().getStringArray(R.array.poi_name); nearByPois.clear(); for (int i = 0; i < 12; ++i) { NearByPoi data = new NearByPoi(poiName[i], imageResource[i]); nearByPois.add(data); } GridViewPoiAdapter gvPoiAdapter = new GridViewPoiAdapter(this, nearByPois); gv.setAdapter(gvPoiAdapter); gv.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) { startSearch(poiName[position]); } }); }
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer