我正在尝试将 UITextField 对象转换为字符串,以便我可以将其传递给模型文件中的函数。但是,即使我在名称输入文本字段中输入了一些字符,然后在其外部单击,它仍打印出空白。为什么什么都没有存储在那里?
在 View Controller 文件中:
@IBOutlet weak var nameInputText: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
nameInputText.delegate = self
let text: String = nameInputText.text!
print(text) //this prints a blank
model.validateName(nametext: text)
}
最佳答案
应该是这样的
@IBOutlet weak var usernameInputText : UITextField!
override func viewDidLoad() {
super.viewDidLoad()
usernameInputText.delegate = self
}
func ClickOnButton()
{
let text: String = usernameInputText.text!
print(text) //this prints My text
model.validateName(nametext: text)
}
func textField(_ textField: UITextField,
shouldChangeCharactersIn range: NSRange,
replacementString string: String)
-> Bool
{
let text: String = usernameInputText.text!
print(text) //this prints My text
model.validateName(nametext: text)
}
关于swift - 在 Swift 中将 UITextField 转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44783100/