Swift 从UITextfield强制展开选项
我试图从UITextfield中获取一个值,并将其作为可选项返回。我已经尝试了建议的强制展开方法,但我仍然收到可选的(“WhateverUserInputHere”)而不是“WhateverUserInputHere”。我还一直在寻找一种方法,确保在检索值之前textfield不为空,以防止在强制展开时崩溃。到目前为止,在用户点击按钮移动到下一个屏幕后,将检索该值,并且该按钮仅在用户开始编辑文本字段时启用。但是,如果他们决定删除文本字段中的所有内容,他们仍然可以继续前进。是否有任何方法可以防止此/确保只有在用户完成键入且textfield不为空时才启用此按钮Swift 从UITextfield强制展开选项,swift,uitextfield,Swift,Uitextfield,我试图从UITextfield中获取一个值,并将其作为可选项返回。我已经尝试了建议的强制展开方法,但我仍然收到可选的(“WhateverUserInputHere”)而不是“WhateverUserInputHere”。我还一直在寻找一种方法,确保在检索值之前textfield不为空,以防止在强制展开时崩溃。到目前为止,在用户点击按钮移动到下一个屏幕后,将检索该值,并且该按钮仅在用户开始编辑文本字段时启用。但是,如果他们决定删除文本字段中的所有内容,他们仍然可以继续前进。是否有任何方法可以防止此
// Variable used to store value from textfield
var nametemp:String?
var name:String = ""
@IBOutlet weak var NameInput: UITextField!
@IBOutlet weak var NextButton: UIButton!
@IBOutlet weak var TestLabel: UILabel!
// Enables button when textfield has been edited
@IBAction func NameInputEditingDidChange(_ sender: Any) {
NextButton.isEnabled = true
}
// When button is used, value of textfield is retrieved
@IBAction func NextButtonVariableTest(_ sender: Any) {
nametemp = String(describing: NameInput.text)
name = nametemp!
// Label returns optional value
TestLabel.text = "Hello" + name
}
}
简单使用
self.name = NameInput.text!
或
使用
字符串(description:)
后,可选(…)
文本将成为字符串的一部分,而不是可选字符串,您将无法删除它。谢谢!那正是我想要的
self.name = NameInput.text ?? ""