我想複製google play音樂android應用程序的行爲。 在該應用程序中,當您使用「我的音樂」專輯選項卡時,專輯列表將以「延伸」形式在動作欄(橙色部分)上開始。當您向上滾動相冊列表時,橙色部分向上滾動但比列表更慢。 當您向下滾動列表時,「橙色塊」也會向下滾動。 此行爲與正在滾動的工具欄和選項卡無關。NestedScrollview重疊CollapsingToolbarLayout喜歡gmusic應用程序
我試圖用新的材料設計庫重現這種行爲。 從Cheesquare使用爲出發點,詳細活動的xml:
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main_content"
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="@dimen/detail_backdrop_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
android:fitsSystemWindows="true">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginStart="48dp"
app:expandedTitleMarginEnd="64dp">
<ImageView
android:id="@+id/backdrop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_collapseMode="pin" />
</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"
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>
我曾嘗試使用背景「ImageView的」用彩色背景,並試圖將它移到旁邊的nestedview。 如果我把imageview放在CollapsingToolbarLayout裏面的視差效果,問題是我不能讓它的高度在嵌套滾動視圖下。 如果我把imageview放在collapsingToolbarLayout之外但在NestedScrollView中,我不能改變viewScrolling的「速度」。 如果我把圖像視圖放在NestedScrollview之外,即使工具條被打開,它也會被拖到工具欄上。
在材質設計庫之前,我使用scrollview的視圖和回調來上下移動它,但是我想使用新庫,因爲它非常乾淨,刪除了很多樣板代碼。
任何想法?
這樣就解決了有過「工具欄中的」滾動視圖,但在gmusic,工具欄「splited」這兩個部分:正常的工具欄隱藏作爲「材料設計規格」,以及位於滾動視圖下的「擴展」工具欄,並向上滾動比scrool視圖慢。所以當你向上滾動時,「常規」工具欄隱藏,另一個仍在顯示。當您向下滾動時,「正常」工具欄顯示的高程超過「滾動視圖+擴展工具欄」,當滾動爲0時,正常和擴展混合。 – gpulido
@ianhanniballake攔截觸摸事件嵌套滾動查看EditTexts和Spinners。我有編輯文本和Spinners幾個佈局。嵌套滾動視圖不能平滑滾動。 –
'app:behavior_overlayTop'應該是'app:behavior_overlapTop' –