Flutter 上垂直可关闭屏幕的实现
Vertically Dismissable Screen Implementation on Flutter
我想要的只是一个垂直可关闭的小部件。 Android相当于我想要的是Slidr
我一直在 Flutter 中寻找它的等价物,但一直没找到。
这是我想做的;
知道如何实现吗?
我认为这可以通过 DraggableScrollableSheet
小部件来完成!
只需将 initialChildSize
设置为 0.0 即可使其在开始时隐藏。
然后将此 sheet 小部件和您的电视剧列表视图包装在一个堆栈中,sheet 在列表上方。
当你点击给定的电视剧时,你可以将initialChildSize
更改为1.0,然后用setState(()=>{});
重建
现在您有一个可拖动的 sheet,点击即可显示!为了制作导航动画,您可以使用 AnimationController
,或者也许有一种方法可以在没有 Stack 的情况下执行此操作,在这种情况下您可以只使用 Navigator.pushNamed
.
谢谢,如果您还有其他问题,请告诉我。
有关更多信息,请查看:https://api.flutter.dev/flutter/widgets/DraggableScrollableSheet-class.html
根据@Mihir Thanekar 的回答,我用谷歌搜索了一下,终于找到了解决我问题的答案。
question gives you the answer of how you should show your DraggableScrollableSheet
and then this 包的答案在 sheet
的大小为 1.0
(即整个屏幕)时启用 dismiss
功能。不幸的是,本机 showModalBottomSheet
方法在这一点上毫无价值,因为没有空的 space 可以用来向下滑动 sheet
.
我想要的只是一个垂直可关闭的小部件。 Android相当于我想要的是Slidr 我一直在 Flutter 中寻找它的等价物,但一直没找到。
这是我想做的;
知道如何实现吗?
我认为这可以通过 DraggableScrollableSheet
小部件来完成!
只需将 initialChildSize
设置为 0.0 即可使其在开始时隐藏。
然后将此 sheet 小部件和您的电视剧列表视图包装在一个堆栈中,sheet 在列表上方。
当你点击给定的电视剧时,你可以将initialChildSize
更改为1.0,然后用setState(()=>{});
重建
现在您有一个可拖动的 sheet,点击即可显示!为了制作导航动画,您可以使用 AnimationController
,或者也许有一种方法可以在没有 Stack 的情况下执行此操作,在这种情况下您可以只使用 Navigator.pushNamed
.
谢谢,如果您还有其他问题,请告诉我。 有关更多信息,请查看:https://api.flutter.dev/flutter/widgets/DraggableScrollableSheet-class.html
根据@Mihir Thanekar 的回答,我用谷歌搜索了一下,终于找到了解决我问题的答案。
DraggableScrollableSheet
and then this 包的答案在 sheet
的大小为 1.0
(即整个屏幕)时启用 dismiss
功能。不幸的是,本机 showModalBottomSheet
方法在这一点上毫无价值,因为没有空的 space 可以用来向下滑动 sheet
.