RecyclerView wrap_content

时间:2015-03-05 00:17:04

标签: android xml android-layout android-studio android-recyclerview

当我的 layout_width wrap_content 时,我试图将RecyclerView置于中心位置

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/rv_schemes"
        android:scrollbars="vertical"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

</LinearLayout>

当RecyclerView给出任何明确的layout_width,例如200dp时,它确实居中,否则它只是左对齐。

当layout_width为wrap_content时,如何制作RecyclerView center_horizo​​ntal?

3 个答案:

答案 0 :(得分:11)

根据您的问题,更新(2016年3月)

我建议您更新为Android Support Library 23.2.1 以支持RecycleVie中的WRAP_CONTENT

在23.2.1之前,不支持在RecyclerView layout_width wrap_content

解决了一些问题,比如修复了与各种测量规范方法相关的错误

检查http://developer.android.com/tools/support-library/features.html#v7-recyclerview

答案 1 :(得分:10)

它与LayoutManager如何计算大小有关。 Here你有一些与人们使用的变通方法相关的错误。

注意:现在支持库的版本23.2支持包装内容,所以看起来他们修复了它。您可以查看更改日志here

答案 2 :(得分:-2)

您是否尝试使用RelativeLayout代替线性布局,然后制作Recyclerview layout_centerHorizontal="true"