if else 语句使用 ".isEmpty" 不起作用 (swift3)



我有一个使用日期选择器存储日期的文本字段。我有一个文本视图,我想隐藏,直到选择日期为止。为此,我有以下代码。

     import UIKit
class ViewController: UIViewController {
@IBOutlet var label: UILabel!
@IBOutlet var thetextField: UITextField!
override func viewDidLoad() {
    super.viewDidLoad()
    label.isHidden = thetextField.text!.isEmpty
     }
func textFieldDidEndEditing(_ textField: UITextField) {
    label.isHidden = textField.text!.isEmpty
}}

那是因为您只检查一次isEmpty属性。您需要的是用textFielddelegate方法检查此属性

func textFieldDidEndEditing(_ textField: UITextField) {
    if textField.text.isEmpty {
        enterName.isHidden = true
    } else {
        enterName.isHidden = false
    }
}

编辑

您的代码看起来像这样

import UIKit
class ViewController: UIViewController, UITextFieldDelegate {
    @IBOutlet var label: UILabel!
    @IBOutlet var thetextField: UITextField!
    override func viewDidLoad() {
        super.viewDidLoad()
        label.isHidden = thetextField.text!.isEmpty
        thetextField.delegate = self
    }
    func textFieldDidEndEditing(_ textField: UITextField) {
        label.isHidden = textField.text!.isEmpty
    }
}

最新更新