public class nearby_custom extends Activity {
private TextView tv_back;
private ListView lv_list;
private ImageButton ibtn_add_custom;
private ArrayList<String> mName = new ArrayList<String>();
/**头像**/
private ArrayList<Bitmap> mPhoto = new ArrayList<Bitmap>();
private ArrayList<Bitmap> mButton=new ArrayList<Bitmap>();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.nearby_custom);
findId();
tv_back.setOnClickListener(clickListener);
setData();
}
private void findId(){
tv_back=(TextView)findViewById(R.id.tv_back);
lv_list=(ListView)findViewById(R.id.lv_list);
}
private void setData(){
String[] names=new String[]{"薄袭来","宝儿","张山峰","去亲爱","我是啊","耳啊是","谭咋鹅","赢正","啊而且啊","人啊一","哦哦哦"
,"啊鹅我","人啊去","想啊恩啊","你啊我","去而去","他安慰去"};
for (int i = 0; i < names.length; i++) {
mName.add(names[i]);
mPhoto.add(BitmapFactory.decodeResource(getResources(), R.drawable.default_avatar));
mButton.add(BitmapFactory.decodeResource(getResources(), R.drawable.btn_add_custom));
}
lv_list.setAdapter(new apdater.nearby_custom(nearby_custom.this, mName, mPhoto, mButton));
}
}
主要是重写 baseApdater中的getview:
public class nearby_custom extends BaseAdapter{
/**名称**/
private ArrayList<String> mName = null;
/**头像**/
private ArrayList<Bitmap> mPhoto = null;
private ArrayList<Bitmap> mButton=null;
private LayoutInflater inflater;
private Context mcontent=null;
public nearby_custom(Context context,ArrayList<String> name,ArrayList<Bitmap> photo,ArrayList<Bitmap> btn){
this.mName=name;
this.mPhoto=photo;
this.mButton=btn;
inflater=LayoutInflater.from(context);
this.mcontent=context;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return mName.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView==null){
convertView=inflater.inflate(R.layout.nearby_custom_list_item, null);
}
ImageView ivPic=(ImageView)convertView.findViewById(R.id.iv_custom);
TextView tv_custom=(TextView)convertView.findViewById(R.id.tv_custom);
ImageButton ibtn_add=(ImageButton)convertView.findViewById(R.id.ibtn_add);
ivPic.setImageBitmap(mPhoto.get(position));
tv_custom.setText(mName.get(position));
ibtn_add.setImageBitmap(mButton.get(position));
addListener(convertView);
return convertView;
}
/**
* 监听button事件
* **/
public void addListener(View convertView) {
((ImageButton)convertView.findViewById(R.id.ibtn_add)).setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(mcontent, "ok", Toast.LENGTH_LONG).show();
}
});
}
}
http://blog.youkuaiyun.com/xiaominghimi/article/details/6314704