安卓:滚动型和recyclerview(Android: scrollview and recycl

2019-11-03 22:46发布

我想打一个应用程序,将列出所有Writer.The屏幕的本本有两个cardview:

第一个跟作家的信息,它会始终在相同的高度。

第二个将有他的书的清单。 我想第二张牌有无限的高度,即只要添加一本书,该卡将不再增长。

起初,我用了一个滚动视图的根并膨胀卡保存在数据库中每本书里面一排。 现在,我使用的是第二卡内recyclerview,因为它帮助并简化了代码。 但现在我可以在卡内,而不是所有的屏幕上滚动,我不希望这种情况发生。 我怎样才能解决呢?

第二张牌不应该是滚动:

这是布局的XML

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:fab="http://schemas.android.com/apk/res-auto"
    android:id="@+id/scrollView"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    android:fillViewport="true"
    android:nestedScrollingEnabled="true">

    <RelativeLayout
        android:orientation="vertical" android:layout_width="match_parent"
        android:layout_height="wrap_content">


        <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:card_view="http://schemas.android.com/apk/res-auto"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:orientation="horizontal"
            card_view:cardCornerRadius="5dp"
            card_view:cardUseCompatPadding="true"
            android:id="@+id/scheda">

            <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:orientation="vertical" android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:padding="10dp">

                <LinearLayout
                    android:orientation="vertical"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_alignParentTop="true"
                    android:layout_alignParentStart="true">

                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:text="Titolo"
                        android:id="@+id/textView3"
                        android:visibility="gone" />

                    <EditText
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:textAppearance="?android:attr/textAppearanceLarge"
                        android:text=""
                        android:id="@+id/titolo"
                        android:visibility="gone"
                        android:inputType="textNoSuggestions"/>

                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:text="Autore"
                        android:id="@+id/textView" />

                    <EditText
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:textAppearance="?android:attr/textAppearanceLarge"
                        android:text=""
                        android:id="@+id/autore"
                        android:inputType="textNoSuggestions"/>

                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:textAppearance="?android:attr/textAppearanceMedium"
                        android:text="Genere"
                        android:id="@+id/textView2" />

                    <EditText
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:textAppearance="?android:attr/textAppearanceLarge"
                        android:text="PENE"
                        android:id="@+id/genere"
                        android:inputType="textNoSuggestions"/>

                </LinearLayout>

            </RelativeLayout>

        </android.support.v7.widget.CardView>

        <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:card_view="http://schemas.android.com/apk/res-auto"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_margin="5dp"
            android:orientation="horizontal"
            android:layout_below="@+id/scheda"
            card_view:cardCornerRadius="5dp"
            card_view:cardUseCompatPadding="true"
            android:elevation="1dp">

            <android.support.v7.widget.RecyclerView
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:id="@+id/recyclerVolumi" />

        </android.support.v7.widget.CardView>

        <com.getbase.floatingactionbutton.FloatingActionsMenu
            android:id="@+id/multiple_actions"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true"
            fab:fab_addButtonColorNormal="@color/myPrimaryColor"
            fab:fab_addButtonColorPressed="@color/myPrimaryDarkColor"
            fab:fab_addButtonPlusIconColor="@color/white"
            fab:fab_labelStyle="@style/menu_labels_style"
            android:layout_marginBottom="16dp"
            android:layout_marginRight="16dp"
            android:layout_marginEnd="16dp"
            android:elevation="2dp">

            <com.getbase.floatingactionbutton.FloatingActionButton
                android:id="@+id/action_a"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                fab:fab_colorNormal="@color/white"
                fab:fab_title="Edit Comic"
                fab:fab_colorPressed="@color/white_pressed"/>

            <com.getbase.floatingactionbutton.FloatingActionButton
                android:id="@+id/action_b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                fab:fab_colorNormal="@color/white"
                fab:fab_title="Edit Volumi"
                android:onClick="volumi"
                fab:fab_colorPressed="@color/white_pressed"/>

        </com.getbase.floatingactionbutton.FloatingActionsMenu>

    </RelativeLayout>

</ScrollView>

Answer 1:

我想你想要做的是膨胀不同类型的视图在RecyclerView而不是让一个CardView + RecyclerView 。 这太问题是非常有益的,我开始用。

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout... >
    <android.support.v7.widget.RecyclerView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/recyclerVolumi" />

    <com.getbase.floatingactionbutton.FloatingActionsMenu
        android:id="@+id/multiple_actions">

        <com.getbase.floatingactionbutton.FloatingActionButton
            android:id="@+id/action_a"/>

        <com.getbase.floatingactionbutton.FloatingActionButton
            android:id="@+id/action_b"/>

    </com.getbase.floatingactionbutton.FloatingActionsMenu>
</Frame...>

所以,你的第一个项目RecyclerView将在本书的详细类型视图和项目的其余部分将有图书类型视图列表..



文章来源: Android: scrollview and recyclerview