<AutoCompleteTextView
android:id="@+id/at"
android:completionThreshold="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
private List<String> allData = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
allData.add("aa");
allData.add("bb");
allData.add("cc");
allData.add("dd");
allData.add("abc");
allData.add("bcd");
AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.at);
MyAdapter adapter = new MyAdapter();
textView.setAdapter(adapter);
}
class MyAdapter extends BaseAdapter implements Filterable {
DataFilter filter;
ArrayList<String> data;
@Override
public int getCount() {
if (data != null && data.size() > 0) {
return data.size();
}
return 0;
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int position, View view, ViewGroup viewGroup) {
TextView textView = new TextView(MainActivity.this);
textView.setText(data.get(position));
return textView;
}
@Override
public Filter getFilter() {
if (filter == null) {
filter = new DataFilter();
}
return filter;
}
private class DataFilter extends Filter {
@Override
protected FilterResults performFiltering(CharSequence prefix) {
//查询结果保存到FilterResults对象里
FilterResults results = new FilterResults();
List<String> queryData = new ArrayList<>();
for (int i = 0; i < allData.size(); i++) {
if (allData.get(i).contains(prefix.toString())) {
queryData.add(allData.get(i));
}
}
results.values = queryData;
results.count = queryData.size();
return results;
}
/**
* 更新UI
*/
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
List<String> queryData = (List<String>) results.values;
if (data == null) {
data = new ArrayList<>();
}
if (data.size() > 0) {
data.clear();
}
if (queryData != null && queryData.size() > 0)
for (String string : queryData) {
data.add(string);
notifyDataSetChanged();
}
}
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有