一般都需要扩展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<ScanResult> ls; public MyAdapter(Context context,List<ScanResult> 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; } }