我正在尝试做一个过滤列表视图的搜索栏但是我在这一行中遇到了这个错误,filteredProjects.add(container.getProjects().get(i));
我不知道为什么?知道问题可能是什么吗?感谢您的帮助,我将不胜感激。
Gson gson = new GsonBuilder().setDateFormat(
"yyyy-MM-dd'T'HH:mm:ssZ").create();
final ProjectContainer container = gson.fromJson(resultat,
ProjectContainer.class);
final ListView lv = (ListView) findViewById(R.id.list);
/**
* Updating parsed JSON data into ListView
* */
adaptateur = new ProjectAdapter(ProjectActivity.this,
R.layout.ligne_project, container);
lv.setAdapter(adaptateur);
// setListAdapter(adaptateur);
// Search EditText
EditText inputSearch;
inputSearch = (EditText) findViewById(R.id.inputSearch);
/**
* Enabling Search Filter
* */
inputSearch.addTextChangedListener(new TextWatcher() {
@SuppressWarnings("null")
@Override
public void onTextChanged(CharSequence s, int arg1, int arg2,
int arg3) {
ProjectContainer filteredProjects = null;
if (!s.toString().equals("")) {
for (int i = 0; i < container.getProjects().size(); i++) {
if (container.getProjects().get(i)
.getAbbreviation().toString().contains(s)) {
filteredProjects.setProjects(null);
filteredProjects.add(container.getProjects()
.get(i));
}
}
adaptateur = new ProjectAdapter(ProjectActivity.this,
R.layout.ligne_project, filteredProjects);
lv.setAdapter(adaptateur);
} else {
adaptateur = new ProjectAdapter(ProjectActivity.this,
R.layout.ligne_project, container);
lv.setAdapter(adaptateur);
}
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1,
int arg2, int arg3) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
}
});
这是我的 ProjectContainer.class :
import java.util.List;
import com.google.gson.annotations.SerializedName;
public class ProjectContainer {
@SerializedName("project")
List<Project> projects;
public List<Project> getProjects() {
return projects;
}
public void setProjects(List<Project> projects) {
this.projects = projects;
}
public void add(Project project) {
projects.add(project);
}
}