我想以编程方式单击recyclerView中的项目,我找到了一种方法:
recyclerView.findViewHolderForAdapterPosition(0).itemView.performClick();
Run Code Online (Sandbox Code Playgroud)
但它对我不起作用,findViewHolderForAdapterPosition只返回null.
我在代码中遗漏了什么吗?
HistoryListAdapter:
public class HistoryListAdapter extends RecyclerView.Adapter<HistoryListAdapter.ViewHolder> {
private static ArrayList<RecordItem> recordItems;
private static FragmentActivity activity;
private static RecordList recordList;
public HistoryListAdapter(ArrayList<RecordItem> recordItems, FragmentActivity FA, RecordList FRL) {
this.recordItems = recordItems;
this.activity = FA;
this.recordList = FRL;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// create a new view
View itemLayoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.recorditem, parent, false);
return new ViewHolder(itemLayoutView);
}
@Override
public void onBindViewHolder(final ViewHolder viewHolder, final int position) {
// TextView …Run Code Online (Sandbox Code Playgroud)