gpt4 book ai didi

ios - 如何在 SwiftUI 中删除或隐藏 Toggle 的标签

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:58:37 24 4
gpt4 key购买 nike

我正在寻找一种方法来删除 Toggle 的标签在 SwiftUI 中...

我试过 ToggleStyle但这似乎不是正确的方法:

Toggle(isOn: $isBlinky) {
Text("DO NOT DISPLAY").color(.red)
}
.toggleStyle(.switch)

由于标签似乎包含在类型本身 ( struct Toggle<Label> ) 中,因此可能没有办法只使用开关......

顺便说一下,如果我使用 Text("")然后 scaledToFit()开关仍然有点靠右,并没有真正居中......

无论如何,如果有人有想法!

PS:在等待解决方案时,我包装了一个很好的旧UISwitch ,但这不是这个主意...

struct Switch : UIViewRepresentable {
@Binding var isOn : Bool

func makeUIView(context: Context) -> UISwitch {
let uiView = UISwitch()
uiView.addTarget(
context.coordinator,
action: #selector(Coordinator.didChange(sender:)),
for: .valueChanged)

return uiView
}

func updateUIView(_ uiView: UISwitch, context: Context) {
uiView.isOn = isOn
}

// MARK:- Coordinator

func makeCoordinator() -> Switch.Coordinator {
return Coordinator(self)
}

class Coordinator: NSObject {
var control: Switch

init(_ control: Switch) {
self.control = control
}

@objc func didChange(sender: UISwitch) {
control.isOn = sender.isOn
}
}
}

最佳答案

swift 用户界面 1.0

使用 labelsHidden 修饰符隐藏标签/标题

这是应该做的。

Toggle("Turn alarm on", isOn: $isToggleOn)
.labelsHidden() // Hides the label/title

注意:即使标签已隐藏,您仍应添加一个以方便访问。

示例:

Toggle Example with no Label

关于ios - 如何在 SwiftUI 中删除或隐藏 Toggle 的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56804664/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com