ListView之BaseAdapter详解

一般都需要扩展BaseAdapter对象,需要重写4个方法

1

public int getCount()
该方法需要返回控制该Adapter将会包含多少个列表项目

2

public Object getItem(int position)
该方法返回值决定第position处的列表的内容

3

public long getItemId(int position)
该方法的返回值决定第position处的列表项ID

4 该方法返回值决定第position处的列表项组件

public View getView(int position, View convertView, ViewGroup parent)
该方法返回值决定第position处的列表项组件
下边是一个例子
 
  
public class MyAdapter extends BaseAdapter{
    LayoutInflater inflater;
    List ls;
    public MyAdapter(Context context,List objects){
        this.inflater=LayoutInflater.from(context);
        this.ls=objects;

    }
    @Override
    public int getCount() {
        return ls.size();
    }

    @Override
    public Object getItem(int position) {
        return position;
    }

    @Override
    public long getItemId(int position) {
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ScanResult scanResult=ls.get(position);
        View v=inflater.inflate(R.layout.item,null);
        TextView tv= (TextView) v.findViewById(R.id.textView);
        TextView tv2= (TextView) v.findViewById(R.id.textView2);
        Log.i("Main","jia");
        tv.setText(scanResult.SSID);
        tv2.setText(scanResult.level+"");
        return v;
    }
}

你可能感兴趣的:(android)