Android BaseAdapter應(yīng)用實例
更新時間:2016年01月16日 10:04:44 作者:hshm20517
這篇文章主要介紹了Android BaseAdapter應(yīng)用方法,結(jié)合生成聯(lián)系人Items的實例形式分析了BaseAdapter的使用技巧,需要的朋友可以參考下
本文實例講述了Android BaseAdapter的應(yīng)用方法。分享給大家供大家參考,具體如下:
直接上源碼
/** * 生成聯(lián)系人Items,即Items中包含如下控件 * */ public final class ViewHolder{ public ImageView callImg;//打電話的圖標(biāo) public ImageView headImg;//頭像 public TextView peopleName;//聯(lián)系人名 public TextView peopleNumber;//聯(lián)系人號碼 } public class MyAdapter extends BaseAdapter { private LayoutInflater mInflater; public MyAdapter(Context context) { this.mInflater = LayoutInflater.from(context); } public int getCount() { return listPeople.size(); } public Object getItem(int arg0) { return listPeople.get(arg0); } public long getItemId(int arg0) { return arg0;//當(dāng)初在看別人例子時,此處返回NUll,加載都沒問題,但在ListView中的OnItemsClick事件中就報錯了。 } public View getView(final int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { holder = new ViewHolder(); convertView = mInflater.inflate(R.layout.peopleinfo, null); holder.callImg = (ImageView) convertView .findViewById(R.id.callbtn); holder.headImg = (ImageView) convertView .findViewById(R.id.contactImage); holder.peopleName = (TextView) convertView .findViewById(R.id.peopleName); holder.peopleNumber = (TextView) convertView .findViewById(R.id.peopleNumber); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } final String name = (String) listPeople.get(position).get( "peopleName"); final String num = (String) listPeople.get(position).get( "peopleNumber"); holder.peopleName.setText((String) listPeople.get(position).get( "peopleName")); holder.peopleNumber.setText((String) listPeople.get(position).get( "peopleNumber")); // holder.headImg.setImageResource(R.drawable.ic_menu_contact); if(listPeople.get(position).get("peoplePhoto") != null){ holder.headImg.setImageBitmap((Bitmap)listPeople.get(position).get( "peoplePhoto")); } holder.callImg.setImageResource(R.drawable.ic_dial_action_call); holder.callImg.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //處理Items中控件的觸發(fā)事件 } }); return convertView; } } /* *應(yīng)用BaseAdapter * */ final MyAdapter myAdapter = new MyAdapter(this); contacts.setAdapter(myAdapter); contacts.setOnItemClickListener(new OnItemClickListener() { @SuppressWarnings("unchecked") public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { Map<String, Object> map = (Map<String, Object>) myAdapter.getItem(arg2);//此處需要注意, String peopleNumber = String.valueOf(map.get("peopleNumber")); } });
希望本文所述對大家Android程序設(shè)計有所幫助。
您可能感興趣的文章:
- 學(xué)習(xí)Android自定義Spinner適配器
- 舉例講解Android應(yīng)用中SimpleAdapter簡單適配器的使用
- Android編程中常用適配器及自定義適配器用法實例分析
- Android中 自定義數(shù)據(jù)綁定適配器BaseAdapter的方法
- Android列表實現(xiàn)(3)_自定義列表適配器思路及實現(xiàn)代碼
- Android控件系列之相冊Gallery&Adapter適配器入門&控件縮放動畫入門
- Android中BaseAdapter的用法分析與理解
- Android中BaseAdapter用法示例
- Android之ListView分頁加載數(shù)據(jù)功能實現(xiàn)代碼
- Android之自定義實現(xiàn)BaseAdapter(通用適配器二)
相關(guān)文章
android開發(fā)設(shè)計模式之——單例模式詳解
本篇文章主要介紹了android開發(fā)設(shè)計模式之——單例模式詳解,具有一定的參考價值,有需要的可以了解一下。2016-11-11Android系統(tǒng)開發(fā)中l(wèi)og的使用方法及簡單的原理
LOG是廣泛使用的用來記錄程序執(zhí)行過程的機(jī)制,它既可以用于程序調(diào)試,也可以用于產(chǎn)品運(yùn)營中的事件記錄;在平時開發(fā)過程中經(jīng)常需要與log打交道,所以很有必要了解log的使用方法及簡單的原理,感興趣的朋友可以了解下啊2013-01-01Android使用acoco統(tǒng)計代碼行覆蓋率介紹
大家好,本篇文章主要講的是Android使用acoco統(tǒng)計代碼行覆蓋率介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12TabLayout實現(xiàn)ViewPager指示器的方法
這篇文章主要為大家詳細(xì)介紹了TabLayout實現(xiàn)ViewPager指示器,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-06-06Android Studio 創(chuàng)建自定義控件的方法
這篇文章主要介紹了Android Studio 創(chuàng)建自定義控件的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06Android動態(tài)添加設(shè)置布局與控件的方法
這篇文章主要介紹了Android動態(tài)添加設(shè)置布局與控件的方法,涉及Android中布局與控件的相關(guān)操作技巧,需要的朋友可以參考下2016-01-01