前言
在Android開發(fā)過程中恐锣,我們經(jīng)常會遇到一些標(biāo)題欄顯示/隱藏 十分炫酷的效果测柠,在Android設(shè)計庫中役衡,有那么幾個控件CoordinatorLayout
,AppBarLayout
與CollapsingToolbarLayout
澎办,也能迅速實現(xiàn)標(biāo)題欄的一些特效曹鸠,那么今天就來做個簡單的介紹吧蘑志。
今天涉及知識點:
- 依賴庫
-
CoordinatorLayout
,AppBarLayout
與CollapsingToolbarLayout
簡單介紹
2.1 CoordinatorLayout
2.2 AppBarLayout
2.3 CollapsingToolbarLayout
2.4 滾動控件
2.5 各控件之間的關(guān)系 - 標(biāo)題欄使用前環(huán)境搭建
3.1 外部環(huán)境
3.2 實現(xiàn)標(biāo)題欄重心 - AppBarLayout使用詳解
4.1 AppBarLayout直接子view顯隱
4.2 AppBarLayout直接子view動效種類
4.3 AppBarLayout事件處理 - CollapsingToolbarLayout使用詳解
5.1 折疊標(biāo)題
5.2 內(nèi)容紗布
5.3 狀態(tài)欄紗布
5.4 視差滾動
5.5 將子View位置固定
先來波效果圖:
更多精彩內(nèi)容累奈,請關(guān)注微信公眾號 "Android進(jìn)擊",大家一起來學(xué)習(xí)進(jìn)步吧
一. 依賴庫
CoordinatorLayout
,AppBarLayout
與CollapsingToolbarLayout
的使用需要在項目中添加如下依賴:
implementation 'com.google.android.material:material:1.2.0'
二. CoordinatorLayout,AppBarLayout與CollapsingToolbarLayout簡單介紹
我們經(jīng)常提到的應(yīng)該是AppBarLayout
了,但是凡是介紹到AppBarLayout
使用的時候急但,又會順便講講CoordinatorLayout
和CollapsingToolbarLayout
澎媒,所以很多同學(xué)都疑惑,我是看AppBarLayout
使用啊羊始,你老是講CoordinatorLayout
和CollapsingToolbarLayout
干啥旱幼,真讓人懵逼。那么下面就來簡單講講它們之間的關(guān)系突委。
2.1 CoordinatorLayout
CoordinatorLayout
本質(zhì)上是一個ViewGroup
,其具備通過Behavior 協(xié)調(diào)子View的功能柏卤。
2.2 AppBarLayout
AppBarLayout
是一個垂直分布的LinearLayout
,其可以定制當(dāng)某個滾動View的滾動手勢發(fā)生變化時匀油,AppBarLayout
內(nèi)部的子view發(fā)生連帶動作缘缚。即根據(jù)某個滾動view的變化來使AppBarLayout
內(nèi)部的子view發(fā)生變化。
2.3 CollapsingToolbarLayout
CollapsingToolbarLayout
實質(zhì)是一個FrameLayout
敌蚜,其是作為標(biāo)題欄外部布局用于控制標(biāo)題欄效果的桥滨。實質(zhì)是對標(biāo)題欄效果的進(jìn)一步增強(qiáng),若你標(biāo)題欄需要實現(xiàn)更加炫酷的效果弛车,你可以用此布局來包裝你的標(biāo)題欄
控件齐媒,但需要注意的是它是作為AppBarLayout
的直接子view使用。
2.4 滾動控件
一般指NestedScrollView
纷跛,RecyclerView
等可滑動控件喻括。