隐藏选择器&x27;s关注SwiftUI中的watchOS
我需要使用选择器视图,但我看不到任何隐藏绿色焦点边框的选项 代码:隐藏选择器&x27;s关注SwiftUI中的watchOS,swiftui,watchos,swiftui-picker,Swiftui,Watchos,Swiftui Picker,我需要使用选择器视图,但我看不到任何隐藏绿色焦点边框的选项 代码: @State private var selectedIndex=0 变量值:[String]=(0…12).map{String($0)} var body:一些观点{ 选择器(选择:$selectedIndex,标签:文本(“”)){ ForEach(0..
@State private var selectedIndex=0
变量值:[String]=(0…12).map{String($0)}
var body:一些观点{
选择器(选择:$selectedIndex,标签:文本(“”)){
ForEach(0..<值.计数){
文本(值[$0])
}
}
.标签隐藏()
}
以下扩展将黑色覆盖在选择器边框上 结果 代码 用法 确保
.focusBorderHidden()
是第一个修改器
Picker( [...] ) {
[...]
}
.focusBorderHidden()
[...]
extension Picker {
func focusBorderHidden() -> some View {
let isWatchOS7: Bool = {
if #available(watchOS 7, *) {
return true
}
return false
}()
let padding: EdgeInsets = {
if isWatchOS7 {
return .init(top: 17, leading: 0, bottom: 0, trailing: 0)
}
return .init(top: 8.5, leading: 0.5, bottom: 8.5, trailing: 0.5)
}()
return self
.overlay(
RoundedRectangle(cornerRadius: isWatchOS7 ? 8 : 7)
.stroke(Color.black, lineWidth: isWatchOS7 ? 4 : 3.5)
.offset(y: isWatchOS7 ? 0 : 8)
.padding(padding)
)
}
}
Picker( [...] ) {
[...]
}
.focusBorderHidden()
[...]