gpt4 book ai didi

android - 在自动完成 TextView android中添加永久搜索标题

转载 作者:行者123 更新时间:2023-11-30 03:53:25 24 4
gpt4 key购买 nike

我想在 android 的自动完成 TextView 中添加永久搜索结果。例如:如果我在自动完成中输入“x”,如果它显示酒店列表...xyz1、xyz2.etc...那么最后的结果必须是“NOT IN LIST”值。如果用户找不到他们的酒店,那么他们可以选择 NOT IN LIST 选项。

即使用户键入预测搜索无法提供的文本,“不在列表中”也应该是自动完成应该提供的唯一建议。我是 Android 新手。我正在做一个小应用程序。请帮忙。如果我必须使用自定义自动完成 TextView ,那么我应该覆盖什么方法?如果是这样,请告诉我必须覆盖的方法代码

最佳答案

这是我在我的一个应用程序中使用的 AutoCompleteAdapter。我希望这能解决你的问题

将下面的适配器设置为您的 AutoCompleteTextView 控件:

    ArrayAdapter<String> adapter = new AutoCompleteAdapter(this,
R.layout.dropdown_item);

autoComplete.setAdapter(adapter);

示例适配器:

private class AutoCompleteAdapter extends ArrayAdapter<String>
implements Filterable {
private ArrayList<String> mData;

public AutoCompleteAdapter(Context context, int textViewResourceId) {
super(context, textViewResourceId);
mData = new ArrayList<String>();
}

@Override
public int getCount() {
try {
return mData.size();
} catch (NullPointerException e) {
return 0;
}
}

@Override
public String getItem(int index) {
return mData.get(index);
}

@Override
public Filter getFilter() {
Filter myFilter = new Filter() {
@Override
protected FilterResults performFiltering(CharSequence constraint) {
FilterResults filterResults = new FilterResults();
if (constraint != null) {
//This shows a progress to the user in my app. you don't need to use this
handle.sendEmptyMessage(MSG_SHOW_PROGRESS);
try {
//Fill mData with your data
mData = XmlParser.searchLocations(constraint
.toString());
} catch (Exception e) {
handle.sendEmptyMessage(MSG_HIDE_PROGRESS);
}
mData.add("NOT IN LIST");
filterResults.values = mData;
filterResults.count = mData.size();
}
return filterResults;
}

@Override
protected void publishResults(CharSequence contraint,
FilterResults results) {
if (results != null && results.count > 0) {
notifyDataSetChanged();
handle.sendEmptyMessage(MSG_HIDE_PROGRESS);
} else {
notifyDataSetInvalidated();
handle.sendEmptyMessage(MSG_HIDE_PROGRESS);
}
}
};
return myFilter;
}
}

关于android - 在自动完成 TextView android中添加永久搜索标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13746645/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com