20

苹果终于在 2021 年的 iOS 15 中发布了一个苹果地图风格的“底页”控件:UISheetPresentationController

这种类型的纸张本身支持“止动”,即纸张自然放置的高度。默认large()定位表示全屏显示,而medium()定位覆盖大约一半的屏幕。

但是,API 中没有small()止动。

Apple Maps 和类似应用程序通常会在屏幕底部显示一个完全折叠的小工作表,可以将其拖动到半高,也可以将其拖动到全屏。Apple Maps 实际上显示了一个 1/3 高度的屏幕,这似乎与medium()棘爪不同。

Apple Maps 小型折叠底板

使用UISheetPresentationController而不是任何 3rd 方重新实现底部表格,如何在屏幕底部显示带有 Apple Maps 风格的折叠小棘爪的表格?

4

2 回答 2

11

我提交了一个雷达请求支持。我建议任何想看到这一点的人也这样做。实际上中型和大型不会削减它,如果在 iOS 15 发布之前没有添加它,我们仍然会依赖第三方库。

于 2021-07-08T03:58:05.357 回答
1

使用+[UISheetPresentationControllerDetent _detentWithIdentifier:constant:].

这是一种私有方法。

样本

 Summary: UIKitCore`+[UISheetPresentationControllerDetent _detentWithIdentifier:constant:]        Address: UIKitCore[0x00000001838d50fc] (UIKitCore.__TEXT.__text + 17876312)
于 2022-02-19T15:23:54.557 回答