我想在SwiftUI的文本字段中添加$sign
嗨,我想在用户键入时向文本字段添加$sign。 这是我当前的代码我想在SwiftUI的文本字段中添加$sign,swiftui,textfield,Swiftui,Textfield,嗨,我想在用户键入时向文本字段添加$sign。 这是我当前的代码 ZStack(alignment: .leading) { if price.isEmpty { Text("Enter total budget") } HStack { TextField("", text: $price) .keyboardType(.decimalPad) } } 货币格式化程序是一种方法,但如果您只想在键入时在文本
ZStack(alignment: .leading) {
if price.isEmpty {
Text("Enter total budget")
}
HStack {
TextField("", text: $price)
.keyboardType(.decimalPad)
}
}
货币格式化程序是一种方法,但如果您只想在键入时在文本字段中显示$,则可以使用如下内容: (当然,您可以将此方法与格式化程序结合使用)
货币格式化程序是一种方法,但如果您只想在键入时在文本字段中显示$,则可以使用如下内容: (当然,您可以将此方法与格式化程序结合使用)
使用格式化程序将某种货币格式化程序与
文本字段一起使用可能是合理的,它不会在键入过程中进行即时格式化,但在编辑完成时它肯定会对输入值进行格式化。你的应用程序是否只支持美元?使用格式化程序将某种货币格式化程序与文本字段一起使用可能是合理的,它不会在输入时即时格式化,但在编辑完成时,它肯定会格式化输入值。你的应用程序只支持美元吗?
struct ContentView: View {
@State var price = ""
var body: some View {
VStack {
ZStack(alignment: .leading) {
if price.isEmpty {
Text("Enter total budget")
}
HStack {
TextField("", text: Binding(
get: { price },
set: { newVal in
if price.starts(with: "$") {
price = newVal
} else {
price = "$" + newVal
}
})).keyboardType(.decimalPad)
}
}.padding(20)
Text("number entered: " + String(price.dropFirst()))
}
}
}