从UITextField获取信息

26

我有一个UITextField,要求用户使用数字键盘输入一些数据。

  • 输出的数据是字符串还是整数?
  • 如何将他们输入的数字乘以10并将结果输出到标签中?
3个回答

37

只需使用 UITextFieldtext 属性获取值(类型为字符串)。

然后,使用 toInt() 方法(返回可选型)将其转换为整数,以便执行数学运算。

@IBOutlet weak var field: UITextField!
@IBOutlet weak var label: UILabel!

@IBAction func getVal () {
     var text: String = field.text
     var multipliedNum: Int = 0

     if let num = text.toInt() {
         multipliedNum = num * 10
     }

     label.text = "\(multipliedNum)"
}

label.text = "\(multipliedNum)" - vacawama
3
玩笑一句话:label.text = "\((field.text.toInt() ?? 0) * 10)" 的翻译是:“将标签文本设为“((field.text.toInt() ?? 0) * 10)””。 - vacawama
1
如果需要的话,还有NSValueTransformer可以用来进行更高级的解析,以便处理1.3E-3之类的内容。 - Maury Markowitz

5

Xcode 9与Swift

//Get reference of UITextView
@IBOutlet weak var inputMealName: UITextField! 

//Get value of input from UITextView in variable
let name: String = inputMealName.text!

//Use input value eg. show alert
  let alert = UIAlertController(title: "Alert", message: name, preferredStyle: UIAlertControllerStyle.alert)

    alert.addAction(UIAlertAction(title: "Click", style: UIAlertActionStyle.default, handler: nil))
        self.present(alert, animated: true, completion: nil)

-1

您可以通过UITextField属性获取字符串。

  • 数据以字符串形式输出。您可以使用字符串方法(intValue,doubleValue等)将字符串值转换为数字。

  • 当您获得数字时,可以通过其文本属性设置标签输出。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接