Horizo​​ntal RecycleView不显示其完整内容

时间:2015-06-19 15:51:09

标签: android view android-recyclerview

我有一个ListView,在里面我想要水平的RecyclerView和自定义项目。问题是不会显示每个图像下的TextView。

enter image description here

使用RecyclerView的主ListView项目

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView android:id="@+id/category_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="start"
        android:textSize="20sp"
        android:layout_marginRight="10dp"/>

    <android.support.v7.widget.RecyclerView
        android:id="@+id/horizontal_recycler_view"
        android:scrollbars="vertical"
        android:layout_width="match_parent"
        android:layout_height="110dp" />
</LinearLayout>

RecyclerView的单项

<LinearLayout
    android:layout_width="100dp"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android" >

    <ImageView android:id="@+id/horizontal_list_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal" />

    <TextView android:id="@+id/horizontal_list_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="FFFFFFFF"
        android:textSize="15sp"/>
</LinearLayout>

4 个答案:

答案 0 :(得分:0)

您使用了100dp android:layout_height,但图片和文字更高。

答案 1 :(得分:0)

您可以尝试以下内容:

<LinearLayout
android:layout_width="100dp"
android:layout_height="wrap_content"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android" >

<ImageView android:id="@+id/horizontal_list_image"
    android:layout_width="wrap_content"
    android:layout_height="0"
    android:weight="70"
    android:layout_gravity="center_horizontal" />

<TextView android:id="@+id/horizontal_list_text"
    android:layout_width="wrap_content"
    android:layout_height="0"
    android:weight="30"
    android:layout_gravity="center_horizontal"
    android:text="FFFFFFFF"
    android:textSize="15sp"/>

在这种情况下,图像将占据70%的大小,textview将是另外30%。

答案 2 :(得分:0)

尝试将RecyclerView项目android:layout_height设为 match_parent ,而不是 wrap_content

答案 3 :(得分:0)

这应该有用。

    <LinearLayout
    android:weightSum="2"

    android:layout_width="100dp"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android" >

    <ImageView 
        android:layout_weight="1"

        android:id="@+id/horizontal_list_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal" />

    <TextView 
       android:layout_weight="1" 

        android:id="@+id/horizontal_list_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="FFFFFFFF"
        android:textSize="15sp"/>
</LinearLayout>