Android无法为HORIZONTAL回收站视图网格设置列号

时间:2017-09-07 15:40:39

标签: android android-recyclerview

我的recyclerviewgrid view,其水平如此

 recyclerView_Day = (RecyclerView) root.findViewById(R.id.day_recycler);
        GridLayoutManager gridLayoutManager = new GridLayoutManager(context,3);
        gridLayoutManager.setSpanCount(3);
        RecyclerView.LayoutManager layoutManager = new
                GridLayoutManager(context, 1,gridLayoutManager.HORIZONTAL, false);
        recyclerView_Day.setLayoutManager(layoutManager);
        recyclerView_Day.setAdapter(new DyaAdapter(context))

但它不起作用,所以我需要在recyclerview中设置3列!

2 个答案:

答案 0 :(得分:0)

为什么不使用 GridView 而不是recyclerview,并在gridview中将columnCount设置为3,这将很容易地完成您的工作。

答案 1 :(得分:0)

使用RecyclerView可以通过两种方式实现这一目标 1.使用GridLayoutManager

recyclerView.setLayoutManager(new GridLayoutManager(this, 3));
  adapter = new DyaAdapter(context);
  recyclerView_Day.setAdapter(adapter);
  1. 另一种方法是使用方向为Vertical的LinearLayoutManager。
  2. 您可以在此处设置项目自定义数据,并使用3个相同的视图为视图充气。

    布局文件:

        <?xml version="1.0" encoding="utf-8"?>
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">
            <View
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:id="@+id/v1"/>
    
            <View
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:id="@+id/v2"/>
    
            <View
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:id="@+id/v3"/>
        </LinearLayout>