CoordinatorLayout 屬性介紹

AppBarLayout:

是繼承LinerLayout實現的一個ViewGroup容器組件,它是為了Material Design設計的App Bar,支持手勢滑動操作。

默認的AppBarLayout是垂直方向的,它的作用是把AppBarLayout包裹的內容都作為AppBar。

屬性:

app:layout_scrollFlags="scroll|enterAlways"

scroll:所有想滾動出屏幕的view都需要設置這個flag,沒有設置這個flag的view將被固定在屏幕頂部。例如,TabLayout沒有設置這個值,將會停留在屏幕頂部。

enterAlways:設置這個flag時,向下的滾動都會導致該view變為可見,啟用快速“返回模式”。

enterAlwaysCollapsed:當你的視圖已經設置minHeight屬性又使用此標志時,你的視圖只能已最小高度進入,只有當滾動視圖到達頂部時才擴大到完整高度。

exitUntilCollapsed:滾動退出屏幕,最后折疊在頂端。

屬性:

app:layout_behavior="@string/appbar_scrolling_view_behavior"

為了ToolBar可以滾動,CoordinatorLayout里面,放一個帶有可滾動的View.比如放的是ViewPager,ListView,RecycleView可以在ViewPager里面是放了RecylerView的,即是可以滾動的View。

CoordinatorLayout包含的子視圖中帶有滾動屬性的View需要設置app:layout_behavior屬性。

注意:

為了使得Toolbar有滑動效果,必須做到如下三點

1. CoordinatorLayout作為布局的父布局容器。

2.給需要滑動的組件設置app:layout_scrollFlags=”scroll|enterAlways”屬性。

3.給滑動的組件設置app:layout_behavior屬性


CollapsingToolbarLayout:

可實現Toolbar的折疊效果。CollapsingToolbarLayout的子視圖類似與LinearLayout垂直方向排放。

app:contentScrim="?attr/colorPrimary"

ToolBar被折疊到頂部固定時候的背景,我們可以通過代碼調用setContentScrim(Drawable)方法改變背景或者在屬性中使用app:contentScrim=”?attr/colorPrimary”來改變背景。

app:title="title"

ToolBar的標題,當CollapsingToolbarLayout全屏沒有折疊時,title顯示的是大字體,在折疊的過程中,title不斷變小到一定大小的效果。我們可以通過代碼調用setTitle(CharSequence)方法設置title。

app:layout_collapseParallaxMultiplier="1.0"

CollapsingToolbarLayout滑動時,子視圖的視覺差,可以通過屬性app:layout_collapseParallaxMultiplier=”0.6”改變。值de的范圍[0.0,1.0],值越大視察越大。

子視圖:

app:layout_collapseMode="parallax | pin”

子視圖的折疊模式,在子視圖設置,有兩種

“pin”:固定模式,在折疊的時候最后固定在頂端;

“parallax”:視差模式,在折疊的時候會有個視差折疊的效果。我們可以在布局中使用屬性app:layout_collapseMode=”parallax”來改變。

其他視圖

app:layout_anchor="@id/appbar"

提供了一個layout_anchor的屬性,連同layout_anchorGravity一起,可以用來放置與其他視圖關聯在一起的懸浮視圖(如FloatingActionButton)。

與某一個AppBarLayout控件相關聯

app:layout_anchorGravity="bottom | right | end"

懸浮視圖的位置

注意:

使用CollapsingToolbarLayout實現折疊效果,需要注意3點

1. AppBarLayout的高度固定

2. CollapsingToolbarLayout的子視圖設置layout_collapseMode屬性

3.關聯懸浮視圖設置app:layout_anchor,app:layout_anchorGravity屬性

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容