将文本视图设置为Int而不是String?迅速

时间:2016-11-23 12:20:11

标签: swift textview

我有一个文本视图供用户输入Int。

我遇到了将结果保存到Int变量的问题,因为它默认认为它是一个字符串。

将输出强制为Int的最佳解决方案是什么?我使用的是仅数字键盘,因此用户无法输入字符串

代码:

@IBOutlet weak var userExerciseWeight: UITextField!
var userExerciseWeightSet = Int()

            if let userExerciseWeightSet = Int(self.userExerciseWeight.text!) {
    }

2 个答案:

答案 0 :(得分:1)

您可以简单地使用if let构造。 textView始终是字符串。您只需将textView文字转换为Int即可。

 if let intText = Int(self.textView.text) {
     print(intText)
 }

答案 1 :(得分:0)

  

我遇到了将结果保存到Int变量的问题,因为它默认认为它是一个字符串。

文本视图是视图,而不是模型。它显示的内容总是一个字符串。当字符串恰好代表Int时,您的代码负责在设置初始值时将Int转换为String,然后将String转换回{{1}从视图中读取值时。

Int

同样的方法适用于显示和读取其他类型的值:您的程序负责格式化并将数据解析为适当的类型。