Mar*_*zky 2 placeholder textfield ios swiftui
我希望我的 iOS SwiftUI TextField显示占位符“输入整数:”,但 TextField 显示 0(var 值的值)。当用户删除 0 时,确实会出现占位符“输入整数:”。如何让占位符“输入整数:”出现而不让用户先删除 0?先感谢您。macOS Catalina 10.15.6 上的 Xcode 11.6。
struct ContentView: View {
@State private var value: Int = 0;
@State private var text: String = "";
var body: some View {
VStack {
TextField(
"Enter an integer:",
value: $value,
formatter: NumberFormatter(),
onCommit: {self.text = "The product is \(2 * self.value).";}
)
.keyboardType(.numbersAndPunctuation)
.textFieldStyle(RoundedBorderTextFieldStyle())
Text(text)
}
.padding([.leading, .trailing], 16)
}
}
Run Code Online (Sandbox Code Playgroud)
我们需要使用格式化程序来显示占位符。
我们的格式化程序应该有formatter.zeroSymbol = ""
let numberFormatter: NumberFormatter = {
let formatter = NumberFormatter()
formatter.numberStyle = .none
formatter.zeroSymbol = ""
return formatter
}()
Run Code Online (Sandbox Code Playgroud)
使用格式化:
TextField("Enter an integer:", value: $value, formatter: numberFormatter)
.keyboardType(.numbersAndPunctuation)
Run Code Online (Sandbox Code Playgroud)
快乐编码:)
归档时间: |
|
查看次数: |
984 次 |
最近记录: |