带有浮动按钮的 Android BottomSheet



如何使这种交互像在谷歌地图中一样底部工作表和浮动按钮?第一个屏幕截图显示了两个浮动按钮。单击地图后,第二个按钮将更改图标并向上滚动并挂钩在底部工作表边缘。(截图2)。

第一个截图

第二个截图

我想

FAB 首先锚定在MapViewright|bottom,并且具有与BottomSheet视图相同的高程。

一旦BottomSheet窥视到某个高度并且顶部等于 FAB 高度的一半BottomSheet那么一个新的锚 id 就会附加到 FAB CoordinatorLayout.Params,这基本上是视图BottomSheet id。

只是为了给你代码指针:

CoordinatorLayout.Behavior behavior = (CoordinatorLayout.Behavior)fab.getLayoutParams();
int boundary = fab.getTop() + (fab.getHeight() * 0.5);

//inside `BottomSheet` callback methods
if(sheetView.getTop() >= boundary){
   //sheet is expanding or its peeking height was changed
   behavior.setAnchorId(sheetView.getId());
} else if (sheetView.getTop() <= boundary){
   //sheet is animating to collapse, being collapsed 
   behavior.setAnchorId(mapView.getId());
}

这里有一个很好的参考,可以帮助你入门:

如何实现底表

底部工作表上的 Android 开发者博客

为了进一步帮助您,请发布现有代码和您尝试过的内容。

相关内容

  • 没有找到相关文章

最新更新