Recyclerview staggeredgridlayoutmanager горизонтальный порядок

Я программирую программу повторного просмотра с помощью staggeredgridlayoutmanager (горизонтальная ориентация), но элементы располагаются вертикально: введите описание изображения здесь

Я хочу другой заказ (горизонтальный заказ): введите описание изображения здесь

MainActivity.java

RecyclerView mRecyclerView = (RecyclerView) findViewById(R.id.recycler_data_view);
StaggeredGridLayoutManager staggeredGridLayoutManager = new StaggeredGridLayoutManager(4, LinearLayoutManager.HORIZONTAL);
        staggeredGridLayoutManager.setGapStrategy(StaggeredGridLayoutManager.GAP_HANDLING_NONE);

mRecyclerView.setItemAnimator(new DefaultItemAnimator());
mRecyclerView.setLayoutManager(staggeredGridLayoutManager);
CustomAdapter customAdapter = new CustomAdapter(MainActivity.this, titles, descriptions);
mRecyclerView.setAdapter(customAdapter);

И мой адаптер:

открытый класс CustomAdapter расширяет RecyclerView.Adapter {

ArrayList<String> titles;
ArrayList<String> descriptions;
Context context;

public CustomAdapter(Context context, ArrayList<String> titles, ArrayList<String> descriptions) {
    this.context = context;
    this.titles = titles;
    this.descriptions = descriptions;
}

@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

    View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.program_layout, parent, false);
    MyViewHolder vh = new MyViewHolder(v);
    return vh;
}

@Override
public void onBindViewHolder(MyViewHolder holder, final int position) {

    StaggeredGridLayoutManager.LayoutParams layoutParams = (StaggeredGridLayoutManager.LayoutParams) holder.itemView.getLayoutParams();
    layoutParams.setFullSpan(false);
    holder.name.setText(titles.get(position));
    holder.description.setText(descriptions);

    // row width but it not work...
    layoutParams.width = (int) ((position + 1) % 5.0 * 500);
}

@Override
public int getItemCount() {
    return titlesDataset.size();
}

public class MyViewHolder extends RecyclerView.ViewHolder {
    TextView name;
    TextView description;

    public MyViewHolder(View itemView) {
        super(itemView);

        // get the reference of item view's
        name = (TextView) itemView.findViewById(R.id.name_text);
        description = (TextView) itemView.findViewById(R.id.description_text);

    }
}

}

Не могли бы вы помочь мне? Я не имею представления о заказываемых товарах в обзоре и настройке ширины. Спасибо!

0 ответов