【发布时间】:2020-09-17 07:40:42
【问题描述】:
我有具有 GridView 的水平 RecyclerView。当我滚动 RecyclerView 时,同时出现 2 个元素。我只想在当前位置显示项目。
活动:
recyclerView = findViewById(R.id.recyclerView);
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this, RecyclerView.HORIZONTAL, false);
recyclerView.setHasFixedSize(false);
recyclerView.setLayoutManager(linearLayoutManager);
recyclerView.setAdapter(new MyRecyclerViewAdapter(this, getTotalCount()));
我的适配器:
public class MyRecyclerViewAdapter extends RecyclerView.Adapter<MyRecyclerViewAdapter.MyViewHolder> {
private int count;
private Context context;
public MyRecyclerViewAdapter(Context context, int count) {
this.context = context;
this.count = count;
}
@NonNull
@Override
public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new MyViewHolder(ViewUtil.inflate(LayoutInflater.from(context), parent, R.layout.my_recyclerView));
}
@Override
public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
MyGridViewAdapter myGridViewAdapter = new MyGridViewAdapter(position);
holder.gridView.setAdapter(myGridViewAdapter);
}
@Override
public int getItemCount() {
return count;
}
static class MyViewHolder extends RecyclerView.ViewHolder {
private GridView gridView;
MyViewHolder(View itemView) {
super(itemView);
gridView = itemView.findViewById(R.id.grid);
}
}
【问题讨论】:
-
嗨 propoLis,请尝试将 recyclerView 列表项的高度设置为
match_parent并查看
标签: android android-recyclerview scroll