package com.way.apapter; import java.util.ArrayList; import java.util.List; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.Filter; import android.widget.Filterable; import android.widget.TextView; import com.way.bean.City; import com.way.weather.R; public class SearchCityAdapter extends BaseAdapter implements Filterable { private List<City> mAllCities; private List<City> mResultCities; private LayoutInflater mInflater; private Context mContext; // private String mFilterStr; public SearchCityAdapter(Context context, List<City> allCities) { mContext = context; mAllCities = allCities; mResultCities = new ArrayList<City>(); mInflater = LayoutInflater.from(mContext); } @Override public int getCount() { return mResultCities.size(); } @Override public City getItem(int position) { return mResultCities.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = mInflater.inflate(R.layout.search_city_item, null); } TextView provinceTv = (TextView) convertView .findViewById(R.id.search_province); provinceTv.setText(mResultCities.get(position).getProvince()); TextView cityTv = (TextView) convertView .findViewById(R.id.column_title); cityTv.setText(mResultCities.get(position).getCity()); return convertView; } @Override public Filter getFilter() { Filter filter = new Filter() { protected void publishResults(CharSequence constraint, FilterResults results) { mResultCities = (ArrayList<City>) results.values; if (results.count > 0) { notifyDataSetChanged(); } else { notifyDataSetInvalidated(); } } protected FilterResults performFiltering(CharSequence s) { String str = s.toString().toUpperCase(); // mFilterStr = str; FilterResults results = new FilterResults(); ArrayList<City> cityList = new ArrayList<City>(); if (mAllCities != null && mAllCities.size() != 0) { for (City cb : mAllCities) { // 匹配全屏、首字母、和城市名中文 if (cb.getAllFristPY().indexOf(str) > -1 || cb.getAllPY().indexOf(str) > -1 || cb.getCity().indexOf(str) > -1) { cityList.add(cb); } } } results.values = cityList; results.count = cityList.size(); return results; } }; return filter; } }
最近下载更多
dingruiasdad LV3
2023年4月11日
xsjxsj LV2
2022年12月13日
慵懒 LV4
2022年6月22日
上邪(ye) LV6
2022年6月19日
wanfeng_233 LV4
2022年6月13日
双方各何必呢 LV13
2022年6月12日
nihao123456 LV6
2022年5月1日
wjl0529 LV3
2022年4月12日
GZW012345 LV8
2022年3月21日
13165798872 LV11
2022年3月7日
最近浏览更多
17693282606 LV12
6月20日
咩咩咩咩咩 LV2
6月17日
pangzhihui LV14
5月28日
1941549176 LV4
5月9日
heweimin LV13
4月15日
微信网友_6522007290040320 LV2
4月15日
syd1988 LV7
3月7日
微信网友_6801903754432512
2023年12月31日
暂无贡献等级
zwj1234 LV1
2023年12月11日
cch16257 LV1
2023年11月27日