我有一个使用 GridLayoutManager 实现的 RecyclerView。
根据数据集中有多少项,spanCount 在 1-4 之间。项目宽度根据 spanCount 变化。如果 spancount 为 4 或更高,则 spanCount 保留为 4。
如果我有 5 个项目,则剩下 1 个项目(1 行中的 4 个项目,剩余 1 个项目),位于屏幕左侧,单独一行。我希望它居中。
我尝试以编程方式设置剩余项目的边距,并在 LinearLayouts 中包装 recyclerView 和单个项目并将重力设置为中心,以及设置 recyclerView 的重力。
示例项目 XML:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal"
>
<RelativeLayout
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_gravity="center"
android:id="@+id/relative"
/>
</LinearLayout>
示例 RecyclerView XML
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="horizontal"
>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
任何人都可以提出解决方案,或者给我工作的材料。
提前致谢。