带有“空”和0 ... 9

时间:2020-08-02 20:04:20

标签: swiftui picker

我想创建一个从0..9和“空”中选择三个数字的选择器,然后获取这些值,例如数字1,数字2和数字3

找到了一种与0..9一起使用的方法,但是我怎么也可以使用一个空的空白选择值可以为空

感谢亚历克斯

1 个答案:

答案 0 :(得分:1)

我在下面做了一个简短的示例,说明了您将如何执行此操作。它允许您选择任何数字,并且空值标记为nil。这应该比从number1 number2 and number3等那里获取价值更容易。

struct ContentView: View {
    
    @State private var selection: Int?
    private var formattedSelection: String {
        selection != nil ? String(selection!) : "Empty"
    }
    
    var body: some View {
        VStack {
            Text("Selection:  \(formattedSelection)")
            
            Picker("Select number", selection: $selection) {
                Text("Empty").tag(nil as Int?)
                
                // Ranges from 0 to 9
                ForEach(0 ..< 10) { value in
                    Text(String(value)).tag(value as Int?)
                }
            }
        }
    }
}
相关问题