我设置了一个包含4个页面的UIPageViewController,每个页面都有不同的标题。我也有一个UITextField在pageContentViewController中,我希望能够隐藏的标题是什么。我得到了这个:
class pageContentViewController: UIViewController, UITextFieldDelegate {
@IBOutlet var titleLabel: UILabel!
@IBOutlet var textEntry: UITextField!
var pageIndex: Int = 0
var titleText = "default"
override func viewDidLoad() {
super.viewDidLoad()
textEntry.delegate = self
self.textEntry = UITextField()
self.titleLabel.text = self.titleText
if self.titleText != "Enter Name" {
self.textEntry.hidden = true
}
}标题文本设置在其他地方,并且大多数情况下显示的都是它应该显示的内容,但是文本字段不会消失。我尝试将if语句放在设置titleText的相同位置,但似乎也不起作用。
发布于 2014-12-10 08:36:24
这个问题是关于设置委托的。
请将文本字段委托设置为ViewController,如下所示
class ViewController: UIViewController,UITextFieldDelegate {然后为文本字段创建IBOutlet,如下所示
@IBOutlet var txtTest : UITextField = nil确保它已连接到情节提要中视图上的文本字段。
最后,使用以下命令设置其委托
txtTest.delegate=self我们就快完成了。现在将这个委托函数放入您的类中。
func textFieldShouldReturn(textField: UITextField!) -> Bool // called when 'return' key pressed. return NO to ignore.
{
textField.resignFirstResponder()
return true;
}希望它能解决你的问题。
https://stackoverflow.com/questions/27391443
复制相似问题