我有一个包含以下元素的xml
<ConstraintLayout>
<ImageView
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toStartOf="@+id/nestedScrollView"
/>
<TextView/>
<TextView/>
<NestedScrollView
android:layout_width="0dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/iv_avatar"
>
<LinearLayout orientation="vertical">
<RecyclerView
android:layout_width="match_parent"/>
<RecyclerView
android:layout_width="match_parent"/>
<RecyclerView
android:layout_width="match_parent"/>
<LinearLayout/>
<NestedScrollView/>
<ConstraintLayout/>
问题是第一个RecyclerView的子级没有采用他们可以使用的正确宽度。 (在子级xml上,宽度设置为wrap_content
)
如果我将3个RecyclerViews之一的android:layout_width="match_parent"
更改为wrap_content
,那么所有元素的大小都会正确
在第三个RecyclerView上带有wrap_content
的示例图像(设计者的第一幅图像,仿真器的第二幅图像)
在所有RecyclerView上带有match_parent
的示例图像(设计者的第一幅图像,仿真器的第二幅图像)
工作就是像这样添加LinearLayout
作为View
的子代
<View
android:layout_width="wrap_content"
android:layout_height="wrap_content" />