为什么UITextField的.text值为Optional(“Actual Text”)Swift

时间:2016-02-15 19:54:33

标签: swift uitextfield

我有一个UITextField,当我得到MyTextField.text值时,而不仅仅是它打印的文本值

  

可选(“UITextField Value”)

如何让它只打印实际文本而不使用Optional(),因此它只是UITextField中的文本。例如:

import UIKit

class FirstViewController: UIViewController {
    @IBOutlet var MyTextField: UITextField!

    override func viewDidLoad() {
        super.viewDidLoad()

        print(MyTextField.text)
    }
}

假设TextField值为“Hello World” 它将打印:“可选(”Hello World“)”

提前谢谢

2 个答案:

答案 0 :(得分:4)

由于您的MyTextField是可选的,因此您必须在打印之前解开文本中的值。

override func viewDidLoad() {
    super.viewDidLoad()

    if let text = MyTextField.text {
        print(text)
    }
}

答案 1 :(得分:0)

Xcode只是说它不知道文本字段中是否存在实际文本。简单地说

print(MyTextField.text)!

应该做的伎俩。通过在那里放置感叹号,您告诉Xcode您知道文本字段中有文本。但是,如果您输入此代码且MyTextField.text不存在,则会收到崩溃。为了防止这种情况,请执行以下操作:

if MyTextField.text != nil {
    print(MyTextField.text)!
}

希望这会有所帮助。