swiftUI 新手。有没有办法显示空白文本字段,并显示数字输入的灰色提示

sk6*_*lus 2 xcode textfield swift

我正在尝试通过文本字段获取数字输入。请参阅下面的相关代码。显示屏不显示“item1:”灰显的文本字段。它显示初始化值 0。删除 0 确实会显示 TextField 提示。试图找出是否有办法显示提示。

@State var item1 = 0





TextField(" item1:", value: $item1, formatter: numberFormatter )





private let numberFormatter: NumberFormatter = {
    let formatter = NumberFormatter()
    formatter.numberStyle = .decimal
    // formatter.timeStyle = .medium
    return formatter
   }()
Run Code Online (Sandbox Code Playgroud)

And*_*dal 6

创建item1一个可选的 int,因为 SwiftUI 不知道该值0是否已由用户提供,因此,它假设不需要占位符,添加一个检查以安全地解开可选值。

struct TestNumber: View {
    @State private var myNumber: Int?
    
    var body: some View {
        TextField("Enter a Number", value: $myNumber, formatter: numberFormatter)
            
    }
    
    private let numberFormatter: NumberFormatter = {
        let formatter = NumberFormatter()
        formatter.numberStyle = .decimal
        return formatter
    }()
}
Run Code Online (Sandbox Code Playgroud)