【问题标题】:How to configure multi-select Segmented Control on MacOS with SwiftUI如何使用 SwiftUI 在 MacOS 上配置多选分段控制
【发布时间】:2020-05-17 00:24:21
【问题描述】:

macOS HIG 建议分段控件可以是多选的: https://developer.apple.com/design/human-interface-guidelines/macos/selectors/segmented-controls/

但是 SwiftUI SegmentedPickerStyle 似乎没有旋钮来配置它。这只是 SwiftUI for macOS 中尚未实现的一个案例吗?

                Picker(selection: self.$pickerSelection, label: Text("")) {
                Text("One").tag(0)
                Text("Two").tag(1)
                Text("Three").tag(2)
                }.pickerStyle(SegmentedPickerStyle())

我似乎无法找到此处引用的 SelectionValue 的定义: https://developer.apple.com/documentation/swiftui/picker/3271572-init

这里的选择值可以是数组吗?

【问题讨论】:

  • SwiftUI 现在不支持,使用 NSSegmentedControl/NSViewRepresentable

标签: macos swiftui picker


【解决方案1】:

在 Asperi 的指导下,我在网上找到了这个并且能够让它发挥作用。使用自定义分段控件。

https://onmyway133.github.io/blog/How-to-make-segmented-control-in-SwiftUI-for-macOS/

需要注意的是,如何将其连接到您的视图很简单,但是添加具有初始状态、标签/图像和闭包作为参数的 init 允许您以编程方式对其进行配置并设置其初始值(如果任何)以及从协调员那里调用更新的位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-18
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    • 1970-01-01
    相关资源
    最近更新 更多