我在RecyclerView中显示我的产品列表
item_row.xml
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_margin="6dp"
android:layout_gravity="center_horizontal"
android:layout_centerHorizontal="true"
app:cardUseCompatPadding="true"
app:cardElevation="4dp"
app:cardCornerRadius="3dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:gravity="center"
android:orientation="horizontal">
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:padding="10dp"
android:textAlignment="center"
android:textStyle="bold"
android:text="Hello"
android:textColor="@android:color/background_dark"
android:textSize="20sp"
android:id="@+id/tv_subject"/>
<android.support.v7.widget.AppCompatCheckBox
android:id="@+id/checkbox"
android:layout_width="50dp"
android:layout_height="50dp"/>
</LinearLayout>
</android.support.v7.widget.CardView>
我对CardView应用了两个属性以使其居中,但我的项目View仍然保持对齐状态
android:layout_gravity="center_horizontal"
android:layout_centerHorizontal="true"
main_layout.xml
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textSize="24sp"
android:textColor="@android:color/white"
android:layout_margin="30dp"
android:textAlignment="center"
android:text="Hello World"/>
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipeRefreshLayout"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_gravity="center"
android:layout_height="match_parent"/>
</android.support.v4.widget.SwipeRefreshLayout>
</LinearLayout>
我还向RecyclerView添加了android:layout_gravity="center"
,但仍然是行左对齐的项目。
如何在RecyclerView中心对齐 CardView (宽度250dp)? 我想念的是什么。
我在预览窗口中设计的CardView。
编辑->找到解决方案
当我将250dp widhth
赋予SwipeRefresh并将其设置为layout_gravity="center"
时,它将居中显示。 但是为什么其他解决方案不起作用?
<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/swipeRefreshLayout"
android:layout_width="250dp"
android:layout_gravity="center"
android:layout_height="0dp"
android:layout_weight="1">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_gravity="center"
android:layout_height="match_parent"/>
</android.support.v4.widget.SwipeRefreshLayout>