【问题标题】:SwiftUI DatePicker triggers touch events when dismissedSwiftUI DatePicker 在关闭时触发触摸事件
【发布时间】:2021-10-15 10:18:44
【问题描述】:

我有一个紧凑的 DatePicker,当打开一个相当标准的声明时会显示一个日历:

    DatePicker(
        self.name,
        selection: self.$date,
        displayedComponents: self.components
    ).labelsHidden()

选择日期后,我想在日历外点按以关闭并验证我的日期。问题是无论我在哪里点击,点击都会触发触摸事件。如何让 DatePicker 日历表现得像一个真正的模态弹出框?

谢谢!

【问题讨论】:

    标签: ios swiftui datepicker


    【解决方案1】:

    您可以在 Datepicker 上使用手势识别器将触摸操作绑定到选择器

    【讨论】:

      【解决方案2】:

      我们有类似的想法,只能通过(您可能已经想到)在其后面放置一个不可见的视图并注册点击手势来解决它。

      【讨论】:

      • 是的,我只是期待并希望 SwiftUI 能够为那些我厌倦了用丑陋的变通方法修复的奇怪默认行为提供优雅的解决方案......
      • 你的代码是什么,因为我无法让它工作?
      • 我现在正在工作,但这与我们所做的方法很接近(希望它有所帮助):designcode.io/swiftui-handbook-dismiss-custom-modal
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-09
      • 1970-01-01
      • 1970-01-01
      • 2010-11-08
      • 2015-11-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多