CoordinatorLayout là gì? Đừng để cái tên ưa thích đánh lừa bạn, nó chẳng khác gì một FrameLayout trên steroid
Để hiểu rõ nhất a CoordinatorLayout
là / hiện gì, trước hết bạn phải hiểu / ghi nhớ ý nghĩa của nó đối với Tọa độ.
Nếu bạn Google từ
Danh từ: Tọa độ
Đây là những gì bạn nhận được:
Tôi nghĩ rằng các định nghĩa này giúp mô tả những gì một CoordinatorLayout tự làm và cách các quan điểm bên trong nó hoạt động.
Một CoordinatorLayout (một ViewGroup) mang các phần tử khác nhau (các Chế độ xem con) của một (̶a̶ ̶c̶o̶m̶p̶l̶e̶x̶ ̶a̶c̶t̶i̶v̶i̶t̶y̶ ̶o̶r̶ ̶a̶n̶ ̶o̶r̶g̶a̶n̶i̶z̶a̶tt một mối quan hệ hài hòa hoặc hiệu quả)
Với sự trợ giúp của CoordinatorLayout, các quan điểm trẻ em phối hợp với nhau một cách hài hòa để thực hiện các hành vi tuyệt vời như
kéo, vuốt, tung hoặc bất kỳ cử chỉ nào khác.
Lần bên trong một CoordinatorLayout đàm phán với những người khác để làm việc cùng nhau một cách hiệu quả bằng cách xác định những hành vi
A CoordinatorLayout là một tính năng tuyệt vời của Material Design giúp tạo ra các bố cục hài hòa và hấp dẫn.
Tất cả những gì bạn phải làm là đưa các quan điểm của con bạn vào bên trong CoordinatorLayout.
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
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:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.byte64.coordinatorlayoutexample.ScollingActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="@dimen/app_bar_height"
android:fitsSystemWindows="true"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/toolbar_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/AppTheme.PopupOverlay" />
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_scolling" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/fab_margin"
app:layout_anchor="@id/app_bar"
app:layout_anchorGravity="bottom|end"
app:srcCompat="@android:drawable/ic_dialog_email" />
</android.support.design.widget.CoordinatorLayout>
và content_scrolling:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView
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:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.byte64.coordinatorlayoutexample.ScollingActivity"
tools:showIn="@layout/activity_scolling">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/text_margin"
android:text="@string/large_text" />
</android.support.v4.widget.NestedScrollView>
Điều này mang lại cho chúng tôi là một bố cục có thể được cuộn để thu gọn Thanh công cụ và ẩn FloatingActionButton
Mở:
Đã đóng cửa: