【问题标题】:How to hide border in swiftUI control?如何在swiftUI控件中隐藏边框?
【发布时间】:2019-11-02 05:41:15
【问题描述】:

是否可以隐藏 SwiftUI 选择器边框?可能属于某个子层。

所谓边框,是指下图中的灰色细线。

import SwiftUI

struct TestView: View {

    @State private var selectedOption = "A"

    let options = ["A", "B", "C", "D", "E" ]

    var body: some View {

        VStack {
            Text(selectedOption)
            Picker(selection: self.$selectedOption, label: Text("Picker Name")) {
                ForEach(options, id: \.self) { option in
                    Text(option).rotationEffect(Angle(degrees: 90))
                }
            }
        .labelsHidden()
            .frame(width : 100, height : 30 )
        .rotationEffect(Angle(degrees: -90))
        }
    }
}

【问题讨论】:

    标签: layout border swiftui picker


    【解决方案1】:

    这些灰线是“选择指示器”,Apple 似乎对 SwiftUI 和 UIKit UIPickerView 有相同的方法,即。始终显示。

    这是来自 Apple UIPickerView 文档:
    "特别注意事项
    在 iOS 7 及更高版本上,您无法自定义选取器视图的选择指示器。选择指示器始终显示,因此将此属性设置为 false 无效。"

    所以没有“官方”的方式来做到这一点......使用 Picker 本身。

    【讨论】:

      【解决方案2】:

      你可以的

      UITableView.appearance().separatorColor = .clear
      

      然后返回你的视图

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-23
        • 2012-06-18
        • 1970-01-01
        • 2019-12-10
        • 1970-01-01
        相关资源
        最近更新 更多