使用Swift5。UI (不是情节提要),这是Xcode的新功能,在从用户检索文本字段字符串后,1)如何将字符串转换为整数,以便可以根据用户对多个文本字段的响应执行数学计算?2)代码放在哪里?
发布于 2020-05-01 05:19:20
1)
@State private var textfieldInput = ""
var Int1: Int {
return Int(textfieldInput) ?? 0 // String to Int conversion is always return optional.
}
//some code
TextField("Text", text: $textfieldInput)2)如果我们不知道你的代码,我们该如何判断?但我在上面尽了最大的努力来展示这个概念。
发布于 2020-05-01 05:32:20
在下面的应用程序中,resultString是将字符串转换为Int的计算属性。这个表达式是可选的,因为当我们尝试时,字符串可以是任何东西。
import SwiftUI
struct ContentView: View {
@State private var num: Int = 0
@State private var text: String = "0"
private var resultInt: Int {
return self.num*self.num
}
private var resultString: String {
if let num = Int(self.text) { // Here it convert the string to an integer
return String(num*num)
}
return "0"
}
var body: some View {
VStack {
TextField("String Number",text: self.$text)
.textFieldStyle(RoundedBorderTextFieldStyle())
TextField("Int Number", value: self.$num, formatter: NumberFormatter())
.textFieldStyle(RoundedBorderTextFieldStyle())
Spacer()
Text("Square is \(self.resultInt)").font(.title)
Text("Square is \(self.resultString)").font(.title)
Spacer()
}.padding()
}
}如果你需要澄清,@rick-h注释下来
发布于 2020-05-01 07:31:15
对不起,(我在这方面真的是新手)之前没有包括我的代码。希望这能有所帮助。
import SwiftUI
struct ContentView: View {
@State var xUSERNAME: String = ""
@State var xUSERNAME2: String = ""
@State var xMATH: Int = 2
var body: some View {
VStack(alignment: .leading) {
Text("Hello World!")
TextField("Enter User Name...", text: $xUSERNAME)
.foregroundColor(.black)
.textFieldStyle(RoundedBorderTextFieldStyle())
Text("YOUR USER NAME: \(xUSERNAME)")
.fontWeight(.bold)
TextField("Enter User Name...", text: $xUSERNAME2)
.foregroundColor(.black)
.textFieldStyle(RoundedBorderTextFieldStyle())
Text("YOUR USER NAME: \(xUSERNAME2)")
.fontWeight(.bold)
Text("YOUR USER NAME: \(xUSERNAME)\(xUSERNAME2)")
Text("\(xUSERNAME)")
}.padding()
}
}https://stackoverflow.com/questions/61527218
复制相似问题