我有vertical RecyclerView
个嵌套horizontal RecyclerViews
,每个嵌套horizontal RecyclerView
都包含图片。 RecyclerView
的高度是wrap_content,因此相对于图像的大小(50x75)。
如何设置layout_weight
(或图像)相对于屏幕尺寸的高度?我尝试使用weightSum和<?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:background="?android:selectableItemBackground"
android:orientation="vertical"
android:padding="5dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:background="@drawable/topten_border_top"
android:padding="2dp">
<TextView
android:id="@+id/itemTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical"
android:text="Sample title"
android:textColor="@android:color/black"
android:textSize="18sp" />
</RelativeLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view_list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginBottom="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@drawable/topten_border_top"
android:orientation="horizontal" />
</LinearLayout>
,但它无法正常工作。
Horizontal RecyclerView:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.rese.biblioteca_3.MainActivity"
android:background="?android:selectableItemBackground"
android:orientation="vertical"
android:padding="0dp"
> <!-- * -->
<ImageButton
android:id="@+id/imageButton"
android:layout_width="50dp"
android:layout_height="75dp"
android:background="#00000000"
android:scaleType="fitXY"
app:srcCompat="@android:color/darker_gray" />
<TextView
android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/imageButton"
android:gravity="center"
android:padding="5dp"
android:textColor="@android:color/black"
android:textSize="18sp" />
</LinearLayout>
水平RecyclerView的内容:
{{1}}
答案 0 :(得分:0)
您需要指定图像的高度和宽度,因为布局中也有文本视图。要获得Play商店类型的水平回收站视图,请执行以下操作:
在content of horizontal recycler view
制作高度和宽度wrap_content:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?android:selectableItemBackground"
android:orientation="vertical"
android:padding="0dp"
>
希望这有帮助!