假設我有以下 .xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout>
<com.google.android.material.appbar.AppBarLayout>
<com.google.android.material.appbar.CollapsingToolbarLayout>
<androidx.appcompat.widget.Toolbar>
<!--ToolBar here-->
</androidx.appcompat.widget.Toolbar>
<!-- scrolls with the recycler view - may have different heights -->
<PageTitleHere
app:layout_collapseMode="none"/>
<!-- This view pins on top when scrolling -->
<AViewThatShouldPinOnTopOnScroll
app:layout_collapseMode="pin" />
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
<androidx.recyclerview.widget.RecyclerView
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
我希望CollapsingToolbarLayout在滾動時只有引腳的最后一個子元素位于頂部。問題是,如果我保持 xml 原樣,它的子項將全部放在它上面,相互重疊(因為CollapsingToolbarLayout繼承FrameLayout)
知道高度AViewThatShouldPinOnTopOnScroll可能會有所不同,如何僅通過編輯 XML 來實作我想要的?
uj5u.com熱心網友回復:
要實作此行為,AViewThatShouldPinOnTopOnScroll需要成為AppBarLayout; 的直接子級。即把它拿出來CollapsingToolbarLayout;并且不需要,app:layout_collapseMode="pin"因為它不再是其中的一部分CollapsingToolbarLayout:
現在的 XML 結構:
<com.google.android.material.appbar.AppBarLayout>
<com.google.android.material.appbar.CollapsingToolbarLayout>
<androidx.appcompat.widget.Toolbar>
<!--ToolBar here-->
</androidx.appcompat.widget.Toolbar>
<!-- scrolls with the recycler view - may have different heights -->
<PageTitleHere/>
</com.google.android.material.appbar.CollapsingToolbarLayout>
<!-- This view pins on top when scrolling -->
<AViewThatShouldPinOnTopOnScroll/>
</com.google.android.material.appbar.AppBarLayout>
演示
黃色的是 AViewThatShouldPinOnTopOnScroll

uj5u.com熱心網友回復:
解決問題的一個簡單示例是:
<CoordinatorLayout>
<AppBarLayout>
<!-- scrolls -->
<Toolbar
android:layout_height="?attr/actionBarSize"
app:layout_scrollFlags="scroll" />
<!-- pins -->
<TextView
android:layout_marginTop="?attr/actionBarSize" />
</AppBarLayout>
</CoordinatorLayout>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/451646.html
標籤:安卓 安卓布局 android-coordinator布局 android-collapsingtoolbarlayout
上一篇:滾動視圖期間按鈕不可見
