【发布时间】:2022-06-15 05:41:16
【问题描述】:
我正在尝试将 ToggleStyle 与自定义图标一起使用。单击切换没有任何反应,而如果我禁用 .toggleStyle 部分,一切正常。 你能帮帮我吗?
import SwiftUI
public struct IconToggle: View {
let onIcon: Image
let offIcon: Image
@Binding var isOn: Bool
public init(
onIcon: Image,
offIcon: Image,
isOn: Binding<Bool>
) {
self.onIcon = onIcon
self.offIcon = offIcon
self._isOn = isOn
}
public var body: some View {
Toggle(isOn: $isOn) {
}
.toggleStyle(
CheckboxStyle(
onIcon: onIcon,
offIcon: offIcon
)
)
}
}
private struct CheckboxStyle: ToggleStyle {
let onIcon: Image
let offIcon: Image
func makeBody(configuration: Configuration) -> some View {
(configuration.isOn ? onIcon : offIcon)
.resizable()
.frame(width: 44, height: 44)
.onTapGesture {
configuration.isOn.toggle()
}
}
}
【问题讨论】:
标签: swiftui