简体   繁体   English

无法看到NestedScrollView底部的小部件

[英]Can't See the widgets at the bottom of NestedScrollView

I just hit a snag in my project that seems to have been an issue for a while now. 我只是在我的项目中遇到了一个障碍,现在似乎已经有一段时间了。

I have a CoordinatorLayout which has an AppBarLayout and a NestedScrollView . 我有一个CoordinatorLayout,其中有一个AppBarLayout和一个NestedScrollView I'm working with the CollapsibleToobarLayout and it works just fine. 我正在使用CollapsibleToobarLayout ,它工作得很好。 The problem is that the NestedScrollView doesn't scroll up and down as it should. 问题在于NestedScrollView不会像应该的那样上下滚动。 after the toolbar collapses, it doesn't scroll anymore, leaving the widgets below hidden. toolbar折叠后,它将不再滚动,下面的小部件将保持隐藏状态。

I have tried android:fillViewPort="true" and android:layout_gravity="fill_vertical" but there's no change. 我尝试了android:fillViewPort="true"android:layout_gravity="fill_vertical"但没有任何变化。 Here's the code 这是代码

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:theme="@style/MyMaterialTheme"
    android:fitsSystemWindows="true"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="250dp"
        android:id="@+id/appBar"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <android.support.design.widget.CollapsingToolbarLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/collapsingToolbar"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginStart="10dp"
            app:expandedTitleMarginEnd="10dp"
            app:layout_scrollFlags="scroll|exitUntilCollapsed"
            android:background="@color/colorPrimary">

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:fitsSystemWindows="true"
                android:scaleType="centerCrop"
                android:background="@drawable/bgPicture"
                app:layout_collapseMode="pin"/>

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                app:titleTextAppearance="@style/Toolbar.TitleText"
                android:layout_gravity="top"
                app:layout_collapseMode="pin"
                android:popupTheme="@style/ThemeOverlay.AppCompat.Light"
                >

                <ImageButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:background="@drawable/custom_trash"
                    android:clickable="true"
                    android:layout_alignParentEnd="true"
                    android:layout_alignParentRight="true"
                    android:layout_gravity="end"
                    android:id="@+id/deleteButton"/>

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

        </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>

    <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:fitsSystemWindows="true"
        android:layout_gravity="fill_vertical"
        android:background="@color/grey"
        android:clipToPadding="false"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"
        android:fillViewport="true">

        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:paddingTop="10dp"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:id="@+id/tableLayout">

            <TableRow
                android:layout_height="wrap_content"
                android:layout_width="wrap_content">



                <RelativeLayout
                    android:layout_width="0dp"
                    android:layout_height="100dp"
                    android:layout_centerHorizontal="false"
                    >

                    <TextView
                        android:layout_height="wrap_content"
                        android:layout_width="0dp"
                        android:id="@+id/goalIdTextView"
                        android:visibility="gone"
                        />
                    <ProgressBar
                        android:id="@+id/progress"
                        android:layout_width="match_parent"
                        android:indeterminate="false"
                        android:max="100"
                        android:progress="60"
                        android:progressDrawable="@drawable/circular_progress_bar"
                        android:layout_height="match_parent"
                        style="?android:attr/progressBarStyleHorizontal"
                        android:layout_centerHorizontal="true" />

                    <TextView
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerInParent="true"
                        android:text="100%"
                        android:textColor="#000000"
                        android:textSize="20sp"
                        android:textStyle="bold"/>

                </RelativeLayout>



                <TextView
                    android:layout_width="wrap_content"
                    android:layout_height="match_parent"
                    android:textAlignment="gravity"
                    android:layout_gravity="right"
                    android:id="@+id/progressText"
                    />

            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="5dp">


            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="5dp">

                <EditText
                    android:layout_weight="1"
                    android:id="@+id/goalTitle"
                    android:layout_height="wrap_content"
                    android:layout_width="wrap_content"
                    android:background="@android:drawable/editbox_background_normal"
                    android:paddingTop="14dp"
                    android:textCursorDrawable="@null"
                    android:paddingBottom="11dp"
                    android:hint="Goal Title"/>
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingTop="5dp">

                <TextView
                    android:layout_height="wrap_content"
                    android:layout_width="match_parent"
                    android:layout_weight="1"
                    android:text="@string/deadline_text"
                    android:textStyle="bold"
                    />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingBottom="5dp">

                <EditText
                    android:id="@+id/dateEditText"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:ems="10"
                    android:layout_weight="1"
                    android:focusable="false"
                    android:inputType="date"
                    android:background="@android:drawable/editbox_background_normal"
                    android:paddingTop="14dp"
                    android:paddingBottom="11dp"
                    />

                <ImageButton
                    android:id="@+id/selectDate"
                    android:layout_height="wrap_content"
                    android:layout_width="wrap_content"
                    android:layout_weight="0"
                    android:layout_toRightOf="@+id/date"
                    android:contentDescription="@string/select_date"
                    android:cropToPadding="true"
                    android:background="@drawable/calendar_icon"/>

            </TableRow>
            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:paddingTop="5dp">

                <TextView
                    android:layout_height="wrap_content"
                    android:layout_width="match_parent"
                    android:layout_weight="1"
                    android:text="@string/tasks_label"
                    android:textStyle="bold"
                    />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <ListView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:id="@+id/listView"
                    android:paddingTop="5dp"
                    android:paddingLeft="10dp"
                    android:paddingRight="10dp"
                    android:paddingBottom="10dp"
                    android:background="@android:drawable/editbox_background_normal"
                    android:layout_centerHorizontal="true" />

            </TableRow>


            <TableRow
                android:layout_height="wrap_content"
                android:layout_width="match_parent"
                android:background="@color/colorPrimary">

                <Button
                    android:layout_height="wrap_content"
                    android:layout_width="wrap_content"
                    android:layout_weight="1"
                    android:textAllCaps="false"
                    android:id="@+id/updateButton"
                    android:textColor="#000"
                    android:onClick="updateGoal"
                    android:textAppearance="?android:textAppearanceLarge"
                    android:text="@string/submit"
                    />
            </TableRow>
        </TableLayout>
    </android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>

Anything after the ListView doesn't show on screen, neither can it be scrolled into view ListView之后的任何内容都不会显示在屏幕上,也无法滚动到视图中

The standard ScrollView is only meant to be used as a parent. 标准ScrollView仅打算用作父级。 You need to change the ScrollView to a android.support.v4.widget.NestedScrollView . 您需要将ScrollView更改为android.support.v4.widget.NestedScrollView

An example can be seen in the reference documentation for AppBarLayout . AppBarLayout的参考文档中可以看到一个示例。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM