折叠工具栏和nestedscrollview不能平滑滚动

嵌套的滚动视图在向下滚动时平滑滚动,但向上滚动时很慢。滚动时混乱的工具栏(带有图像视图和框架布局)不呈现其内容(保持空白)。 我试图在折叠工具栏中的每一个标志。

<android.support.design.widget.CoordinatorLayout 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:id="@+id/coordinatorLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/backdrop" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="100dp" android:fitsSystemWindows="true" android:scaleType="centerCrop" android:src="@drawable/pic" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.5" app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"/> <include android:id="@+id/framelayout" layout="@layout/header_layout" app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed" android:minHeight="100dp"/> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <!-- Your Scrollable View --> <android.support.v4.widget.NestedScrollView android:id="@+id/nested" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="fill_vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingTop="24dp"> </LinearLayout> </android.support.v4.widget.NestedScrollView> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="#da1b75" android:orientation="horizontal" android:textColor="#ffffff" android:theme="@style/ThemeOverlay.AppCompat.Light" app:layout_anchor="@id/appbar" app:layout_collapseMode="pin" app:title=""> </android.support.v7.widget.Toolbar> 

Solutions Collecting From Web of "折叠工具栏和nestedscrollview不能平滑滚动"

使嵌套的scrollview的直接孩子点击(因为你不只有一个子元素,添加一个布局,并把所有的用户界面元素,并使布局可点击)
机器人:可点击=“真”
我遇到类似的问题,这对我来说很有用!

这是我一直在努力的代码 –

 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout 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="test.testrecycler.MaterialActivity" > <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="300dp" android:theme="@style/AppTheme.AppBarOverlay" android:fitsSystemWindows="true" > <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed" app:expandedTitleTextAppearance="@style/expandedappbar" app:collapsedTitleTextAppearance="@style/collapsedappbar" app:statusBarScrim="@color/colorPrimaryDark" > <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:src="@drawable/sample" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <include layout="@layout/content_material" /> </android.support.design.widget.CoordinatorLayout> 

这里是文件content_material.xml有NestedScrollView.It有一个子元素(TextView)已被点击。

 <?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.NestedScrollView 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:id="@+id/content_material" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:context="test.testrecycler.MaterialActivity" tools:showIn="@layout/activity_material"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:clickable="true" android:text="This is an association football club formed in 1983, based in the town of Dover, Kent, England. In the 1989–90 season Dover Athletic won the Southern League championship, but failed to gain promotion to the Football Conference as the club's ground did not meet the required standard. Three seasons later the team won the title again and this time gained promotion to the Conference, where they spent nine seasons before being relegated. The club was transferred to the Isthmian League Premier Division in 2004, but another poor season led the club to a further relegation. After three seasons in the Isthmian League Division One South, the club won the championship and promotion back to the Premier Division, and the following season won another championship and promotion to Conference South. In the 2013–14 season, Dover defeated Ebbsfleet United to return to the Conference Premier after a twelve-year absence. Nicknamed the Whites for their white shirts, they have played at the Crabble Athletic Ground since the club's formation. Their best performance in the FA Cup was reaching the third round proper in both the 2010–11 and 2014–15 seasons. (Full article...) Recently featured: Kalki Koechlin Rogue River (Oregon) Operation Ironside Archive By email More featured articles... his time gained promotion to the Conference, where they spent nine seasons before being relegated. The club was transferred to the Isthmian League Premier Division in 2004, but another poor season led the club to a further relegation. After three seasons in the Isthmian League Division One South, the club won the championship and promotion back to the Premier Division, and the following season won another championship and promotion to Conference South. In the 2013–14 season, Dover defeated Ebbsfleet United to return to the Conference Premier after a twelve-year absence. Nicknamed the Whites for their white shirts, they have played at the Crabble Athletic Ground since the club's formation. Their best performance in the FA Cup was reaching the third round proper in both the 2010–11 and 2014–15 seasons. (Full article...)" /> </android.support.v4.widget.NestedScrollView> 

我想你忘记了CoordinatorLayout的结束标记。 另外,把工具栏放在CollapsingToolbarLayout上

 <android.support.design.widget.CoordinatorLayout 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:id="@+id/coordinatorLayout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/backdrop" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="100dp" android:fitsSystemWindows="true" android:scaleType="centerCrop" android:src="@drawable/pic" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.5" app:layout_scrollFlags="scroll|exitUntilCollapsed" /> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="#da1b75" android:orientation="horizontal" android:textColor="#ffffff" android:theme="@style/ThemeOverlay.AppCompat.Light" app:layout_anchor="@id/appbar" app:layout_collapseMode="pin" app:title="Your title"> </android.support.v7.widget.Toolbar> <!-- What is this for? <include android:id="@+id/framelayout" layout="@layout/header_layout" app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed" android:minHeight="100dp"/> --> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <!-- Your Scrollable View --> <android.support.v4.widget.NestedScrollView android:id="@+id/nested" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="fill_vertical" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingTop="24dp"> </LinearLayout> </android.support.v4.widget.NestedScrollView> </android.support.design.widget.CoordinatorLayout> 

我遇到了包含coordinator layout和包含RecyclerView碎片的布局的类似问题。 我在CollapsingToolbarLayout添加了下面的代码,使滚动顺利。

 app:layout_scrollFlags="scroll|enterAlways" 

它非常简单。 我挣扎了很多,终于知道了它在ImageView的src中放置的高分辨率图像的问题。 解决scheme:只需降低图像的分辨率,保持相同的尺寸。 (可能使用Photoshop)。 为我工作