1.CoordinatorLayout
1.扩展了完成许多Google Material Design 滚动效果的能力
2.通常需要搭配其他控件使用,如Floating Action Button,SnackBar,AppBarLayout
2.AppBarLayout
1.AppBarLayout必须作为CoordinatorLayout的直接子View,如layout_scrollFlags等
2.给需要滑动的组件设置 app:layout_scrollFlags=”scroll|enterAlways” 属性
3.给滑动的组件设置app:layout_behavior属性(如RecyclerView)
3.案例
![](https://img.haomeiwen.com/i5411238/ecb27d484337a137.gif)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".test.DeviceInfoActivity">
<TextView
android:id="@+id/tv_title"
android:background="#3333"
android:textColor="#000"
android:textSize="20sp"
android:text="设备信息"
android:transitionName="@string/to_device_info"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="50dp" />
<android.support.design.widget.CoordinatorLayout
android:id="@+id/rootView"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:background="#3f00"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:layout_marginBottom="10dp"
app:layout_scrollFlags="scroll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginTop="10dp"
android:layout_marginRight="15dp"
android:orientation="vertical"
android:padding="15dp">
<TextView
android:id="@+id/tv_imei"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="IMEI:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_imsi"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="IMSI:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_macAddress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="MacAddress:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_wifiName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="WifiName:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_isRoot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Root:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_brand"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="设备品牌:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_model"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="设备名称:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_version_release"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="系统版本:"
android:textColor="#282828"
android:textSize="17sp" />
<TextView
android:id="@+id/tv_version_manufacturer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="设备厂商:"
android:textColor="#282828"
android:textSize="17sp" />
</LinearLayout>
<android.support.design.widget.TabLayout
android:id="@+id/tabLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="#900f"
app:tabIndicatorColor="@color/colorAccent"
app:tabIndicatorHeight="4dp"
app:tabSelectedTextColor="@color/colorAccent"
app:tabTextColor="#fff" />
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</android.support.design.widget.CoordinatorLayout>
</LinearLayout>
网友评论