I just finished adding a search feature to my android widget to search through a list of the users installed applications. My app installs fine and everything but when I go to s
Add this code before for loop:
if (constraint.length() == 0) {
myFilteredAppList.addAll(originalListAppInfo);
}
i.e
@Override
public Filter getFilter() {
if(filter == null) {
filter = new Filter() {
@Override
protected FilterResults performFiltering(CharSequence constraint) {
FilterResults results = new FilterResults();
List myFilteredAppList = new ArrayList();
constraint = constraint.toString().toLowerCase();
if (constraint.length() == 0) {
myFilteredAppList.addAll(originalListAppInfo);
}
for (ApplicationInfo appInfo : originalListAppInfo) {
String somefield = appInfo.name;
if (somefield.toLowerCase().contains(constraint.toString())) {
myFilteredAppList.add(appInfo);
}
}
results.count = myFilteredAppList.size();
results.values = myFilteredAppList;
return results;
}
@Override
protected void publishResults(CharSequence constraint, FilterResults results) {
mListAppInfo = (List)results.values;
notifyDataSetChanged();
}
};
}
return filter;
}