Material Design(九)--CoordinatorLayout和App Bar

CoordinatorLayout的其它主要使用实例包括app bar(即先前的action bar)和滚动技术。你也许已经在布局中使用Toolbar了,Toolbar允许你轻易地自定义外观和应用中图标部分与布局的集成。Design包在这一点走得更远:使用AppBarLayout允许Toolbar和其它的视图(如TabLayout提供了tab)对标记了ScrollingViewBehavior的兄弟视图中的滚动事件产生反馈。由此,你可以像这样创建布局:

 1 <android.support.design.widget.CoordinatorLayout
 2         xmlns:android='http://schemas.android.com/apk/res/android'
 3         xmlns:app='http://schemas.android.com/apk/res-auto'
 4         android:layout_width='match_parent'
 5         android:layout_height='match_parent'>
 6      
 7      <! -- Your Scrollable View -->
 8     <android.support.v7.widget.RecyclerView
 9             android:layout_width='match_parent'
10             android:layout_height='match_parent'
11             app:layout_behavior='@string/appbar_scrolling_view_behavior' />
12 
13     <android.support.design.widget.AppBarLayout
14             android:layout_width='match_parent'
15             android:layout_height='wrap_content'>
16    <android.support.v7.widget.Toolbar
17                   ...
18                   app:layout_scrollFlags='scroll|enterAlways'>
19 
20         <android.support.design.widget.TabLayout
21                   ...
22                   app:layout_scrollFlags='scroll|enterAlways'>
23      </android.support.design.widget.AppBarLayout>
24 </android.support.design.widget.CoordinatorLayout>

现在,在用户使用RecyclerView的时候,AppBarLayout能够对通过使用子视图的滚动标签来控件他们如何滚进和滚出屏幕的事件进行响应。这些标签包括:

scroll:这个标签应该是想要滚出屏幕的所有视图的集合—对于那些并不使用这个标签的视图,他们而被订在屏幕的顶部。 enterAlways:这个标签确保任何向下的滑动都会使得这个视图可见,激活了“快速返回”模式。 exitUntilCollapsed:这个标签使得视图不会滚动出来,除非在退出之前该视图变得“collapsed”(它的minHeight)。

注意一点:所有使用scroll标签的视图必须在不使用该标签的视图之前声明。这将确保所有的视图从顶部退出,而把固定的元素落下。

posted @ 2016-05-15 10:44  goodpan  阅读(187)  评论(0编辑  收藏  举报