所以我有一个用户输入和一个按钮。当用户输入一些文本和按钮被点击时,另一个活动出现,并将用户输入的内容加载到一个recyclerView中。
public class ExampleAdapter extends RecyclerView.Adapter<ExampleAdapter.ExampleViewHolder> {
private ArrayList<ExampleItem> mExampleList;
public static class ExampleViewHolder extends RecyclerView.ViewHolder {
public TextView mTextViewLine1;
public ExampleViewHolder(View itemView) {
super(itemView);
mTextViewLine1 = itemView.findViewById(R.id.textview_line1);
}
}
public ExampleAdapter(ArrayList<ExampleItem> exampleList) {
mExampleList = exampleList;
}
@Override
public ExampleViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.example_item, parent, false);
ExampleViewHolder evh = new ExampleViewHolder(v);
return evh;
}
@Override
public void onBindViewHolder(ExampleViewHolder holder, int position) {
ExampleItem currentItem = mExampleList.get(position);
holder.mTextViewLine1.setText(currentItem.getLine1());
}
@Override
public int getItemCount() {
return mExampleList.size();
}
}
很难从你的适配器代码中看出,可能是你的搜索有问题。但可以试试这个,看看会发生什么。
//in the adapter constructor
public ExampleAdapter(ArrayList<ExampleItem> exampleList) {
mExampleList = new ArrayList<ExampleItem>();
for(int i=0 ; i<exampleList.size() ; i++){
ExampleItem item = exampleList.get(i);
if(item.getLine1() != null && !item.getLine1().isEmpty()){
mExampleList.add(item);
}
}
}