android:gravity=“center”
android:text=“a”
android:textSize=“20sp” />
<TextView
android:layout_width=“match_parent”
android:layout_height=“80dp”
android:background="@android:color/holo_orange_dark"
android:gravity=“center”
android:text=“b”
android:textSize=“20sp” />
<TextView
android:layout_width=“match_parent”
android:layout_height=“80dp”
android:background="@android:color/holo_green_light"
android:gravity=“center”
android:text=“c”
android:textSize=“20sp” />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
-
注意,这里需要协调布局
CoordinatorLayout
包裹才行 -
app:behavior_peekHeight
显示高度,不显示的话设置为0即可 -
app:layout_behavior
标示这是一个bottom_sheet
以上3个条件都是必须
的。
代码
btn_bottom_sheet.setOnClickListener {
val behavior = BottomSheetBehavior.from(ll_bottom_sheet)
if (behavior.state == BottomSheetBehavior.STATE_EXPANDED) {
//如果是展开状态,则关闭,反之亦然
behavior.state = BottomSheetBehavior.STATE_COLLAPSED
} else {
behavior.state = BottomSheetBehavior.STATE_EXPANDED
}
}
-
STATE_COLLAPSED: 折叠状态
-
STATE_EXPANDED: 展开状态
-
STATE_DRAGGING : 过渡状态
-
STATE_SETTLING: 视图从脱离手指自由滑动到最终停下的这一小段时间
-
STATE_HIDDEN : 默认无此状态(可通过app:behavior_hideable 启用此状态),启用后用户将能通过向下滑动完全隐藏 bottom sheet
==============================================================