如何在嵌套滚动视图中包含列表视图

时间:2015-10-13 10:06:15

标签: android user-interface layout android-recyclerview material

我正在开发一款Android应用程序,而且我的机智结束时看起来相对微不足道。基本上,我有一个带有折叠工具栏的布局,其中包含嵌套滚动视图和回收器视图。问题是滚动工作不正确或者recylcer在其中没有显示任何内容。 (?!)我已经读到这与滚动情况有关,但我还没有找到明确的解决方案 - 所以我的问题是:我怎样才能做到这一点?我对那些根本不涉及回收站视图的解决方案持开放态度,我只需要能够使用数据适配器。

这是我当前的布局代码。 content_species_detail:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:tools="http://schemas.android.com/tools"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
android:scrollbars="vertical"
android:orientation="vertical"
app:layout_scrollFlags="scroll|enterAlways"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="8dp"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:orientation="vertical"
    tools:showIn="@layout/activity_species_detail"
    tools:context="io.github.tylerelric.poketch.SpeciesDetail"
    android:paddingRight="8dp"
    android:paddingLeft="8dp">

    <!--
        The pokedex entry data. "About the species."
        Fun-fact kind of information.
    -->
    <android.support.v7.widget.CardView
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="4dp"
        card_view:cardElevation="5dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="0dp"
        android:paddingBottom="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:translationZ="1dp"
        android:scrollbars="vertical"
        android:id="@+id/species_description"
        card_view:contentPadding="8dp"
        android:elevation="5dp">
        <LinearLayout
            android:orientation="vertical"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Species Information:"
                android:textSize="20dp"
                android:textStyle="bold"
                />
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="14dp"
                android:id="@+id/species_description_text"/>
        </LinearLayout>
    </android.support.v7.widget.CardView>

    <!--
        Stats card. clicking on this should
        eventually bring you to a strategies page.
    -->
    <android.support.v7.widget.CardView
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="4dp"
        card_view:cardElevation="5dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="0dp"
        android:paddingBottom="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:translationZ="1dp"
        android:scrollbars="vertical"
        android:id="@+id/species_stats_info"
        card_view:contentPadding="8dp"
        android:elevation="4dp">
        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:stretchColumns="1">
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="HP"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:id="@+id/species_stats_hp"
                    android:gravity="right" />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Attack"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    android:id="@+id/species_stats_atk"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Defense"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    android:id="@+id/species_stats_def"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Special Attack"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    android:id="@+id/species_stats_spatk"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Special Defense"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    android:id="@+id/species_stats_spdef"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Speed"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    android:id="@+id/species_stats_speed"
                    />
            </TableRow>
        </TableLayout>
    </android.support.v7.widget.CardView>

    <!--
        Type information display.
        How  to do this graphically speaking???
    -->
    <android.support.v7.widget.CardView
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="4dp"
        card_view:cardElevation="5dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="0dp"
        android:paddingBottom="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:translationZ="1dp"
        android:scrollbars="vertical"
        android:id="@+id/species_types"
        card_view:contentPadding="8dp"
        android:elevation="3dp">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Temporary placeholder text for type information."/>
    </android.support.v7.widget.CardView>

    <!--
        List of abilities specific to the current
        species. Tapping on one should bring you
        to the details screen for that ability.
    -->
    <android.support.v7.widget.CardView
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="4dp"
        card_view:cardElevation="5dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="0dp"
        android:paddingBottom="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:translationZ="1dp"
        android:scrollbars="none"
        android:id="@+id/species_abilities_list"
        card_view:contentPadding="8dp"
        android:elevation="3dp">
        <android.support.v7.widget.RecyclerView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/species_ability_list"
            android:scrollbars="none"
            android:nestedScrollingEnabled="false">
            <!--
             List of abilities pertinent to the current species.
            -->
        </android.support.v7.widget.RecyclerView>
    </android.support.v7.widget.CardView>

    <android.support.v7.widget.CardView
        android:layout_gravity="center"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        card_view:cardCornerRadius="4dp"
        card_view:cardElevation="5dp"
        android:paddingLeft="16dp"
        android:paddingRight="16dp"
        android:paddingTop="0dp"
        android:paddingBottom="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:translationZ="1dp"
        android:scrollbars="vertical"
        android:id="@+id/durp"
        card_view:contentPadding="8dp"
        android:elevation="4dp">
        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:stretchColumns="1">
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="HP"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right" />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Attack"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Defense"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Special Attack"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Special Defense"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    />
            </TableRow>
            <TableRow>
                <TextView
                    android:layout_column="1"
                    android:text="Speed"
                    />
                <TextView
                    android:layout_column="1"
                    android:text="100"
                    android:gravity="right"
                    />
            </TableRow>
        </TableLayout>
    </android.support.v7.widget.CardView>

</LinearLayout>

activity_species_detail:http://pastebin.com/hcNVCNTc

我为无法发布此xml内联而道歉;编辑正在反对我。

0 个答案:

没有答案