provinceAdapter、cityAdapter、countyAdapter 具体代码
时间: 2023-07-10 18:39:48 浏览: 45
好的,以下是三个适配器的代码示例:
省级适配器:
```
public class ProvinceAdapter extends BaseAdapter {
private List<Province> data;
private LayoutInflater inflater;
public ProvinceAdapter(Context context, List<Province> data) {
this.data = data;
this.inflater = LayoutInflater.from(context);
}
public void updateData(List<Province> data) {
this.data = data;
notifyDataSetChanged();
}
@Override
public int getCount() {
return data == null ? 0 : data.size();
}
@Override
public Object getItem(int position) {
return data == null ? null : data.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = inflater.inflate(R.layout.list_item_province, parent, false);
holder = new ViewHolder();
holder.nameText = convertView.findViewById(R.id.name_text);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.nameText.setText(data.get(position).getName());
return convertView;
}
private static class ViewHolder {
TextView nameText;
}
}
```
市级适配器:
```
public class CityAdapter extends BaseAdapter {
private List<City> data;
private LayoutInflater inflater;
public CityAdapter(Context context, List<City> data) {
this.data = data;
this.inflater = LayoutInflater.from(context);
}
public void updateData(List<City> data) {
this.data = data;
notifyDataSetChanged();
}
@Override
public int getCount() {
return data == null ? 0 : data.size();
}
@Override
public Object getItem(int position) {
return data == null ? null : data.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = inflater.inflate(R.layout.list_item_city, parent, false);
holder = new ViewHolder();
holder.nameText = convertView.findViewById(R.id.name_text);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.nameText.setText(data.get(position).getName());
return convertView;
}
private static class ViewHolder {
TextView nameText;
}
}
```
县级适配器:
```
public class CountyAdapter extends BaseAdapter {
private List<County> data;
private LayoutInflater inflater;
public CountyAdapter(Context context, List<County> data) {
this.data = data;
this.inflater = LayoutInflater.from(context);
}
public void updateData(List<County> data) {
this.data = data;
notifyDataSetChanged();
}
public void clearData() {
this.data = null;
notifyDataSetChanged();
}
@Override
public int getCount() {
return data == null ? 0 : data.size();
}
@Override
public Object getItem(int position) {
return data == null ? null : data.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = inflater.inflate(R.layout.list_item_county, parent, false);
holder = new ViewHolder();
holder.nameText = convertView.findViewById(R.id.name_text);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.nameText.setText(data.get(position).getName());
return convertView;
}
private static class ViewHolder {
TextView nameText;
}
}
```
其中,list_item_province、list_item_city、list_item_county 分别为省、市、县的列表项布局文件。