Android使用AppBarLayout

本文介绍在Android5.0以上应用中使用AppBarLayout

AppBarLayout必须配合CoordinatorLayout使用

AppBarLayout继承自LinearLayout,它可以定制在某个滑动View(ScrollView, RecycleView等)滑动变化时,内部的子View做什么动作,通过设置==app:layout_scrollFlags==来定义滑动方式

XML基本用法:




    

            
            
    


    
        
    



AppBarLayout子View有5种滑动方式

  • scroll
  • enterAlways
  • enterAlwaysCollapsed
  • exitUntilCollapsed
  • snap

scroll 子View会随着可滑动View(ScrollView, RecycleView)一起滚动,就相当于子View是属于可滑动View的一部分

XML代码如下:




    

            
            
    


    
        
    


效果图如下:

image

enterAlways 配合scroll一起使用, 当可滑动View向下滑动时,子View将直接向下滑动

XML代码如下:




    

            
            
    


    
        
    


效果图如下:

image

enterAlwaysCollapsed 配合scroll和enterAlways一起使用,==app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"==,设置折叠高度==android:minHeight="?attr/actionBarSize"==
,当可滑动View(ScrollView, RecycleView)向下滑动时,子View先向下滑动折叠的高度,然后当可滑动View滑动到顶部时,子View再开始滑动剩余的部分View。

XML代码如下:




    

            
            
    


    
        
    


效果图如下:

image

exitUntilCollapsed 配合scroll一起使用,==app:layout_scrollFlags="scroll|exitUntilCollapsed"==,设置折叠高度==android:minHeight="?attr/actionBarSize"==,可滑动View(ScrollView, RecycleView)滑动时,先将AppBarLayout中的子View滑动到折叠高度,然后固定不动,可滑动View(ScrollView, RecycleView)继续滑动。

XML代码如下:




    

            
            
    


    
        
    


效果图如下:

image

snap 配合scroll一起使用,==app:layout_scrollFlags="scroll|snap"==,可滑动View(ScrollView, RecycleView)停止滑动时,AppBarLayout中的子View如果有75%的界面显示,那么它的整个View都将显示,如果少于75%可见的界面,那么它的整个View都将滑出屏幕

XML代码如下:




    

            
            
    


    
        
    


效果图如下:

image

如果需要代码,请评论留邮箱。

你可能感兴趣的:(Android使用AppBarLayout)