我有一个标签栏控制器作为我的应用程序的起点,其中一个标签和随后发生的内容仅适用于管理员。所以我是密码保护标签。我想在我的视图控制器的viewDidLoad
函数中添加一个小模态对话(顺便说一下是UITableViewController
),
假设我可以在变量inputTextField
的对话框中输入用户输入的文本。
viewDidLoad()
代码的相关部分:
if inputTextField?.text != "secret" {
return
}
super.viewDidLoad()
但它不起作用。任何暗示赞赏。对不起,如果它太基础了,我对iOS和Swift编程完全不熟悉,所以请原谅我无知的人。
答案 0 :(得分:1)
这是一个简单的例子。很多方法。我在第一个标签的VC上在Storyboard中删除了两个UIViews。在后面的那个我给了一个深色来模拟隐藏的秘密视图(secretView)。在顶部视图(entryView)内部,我拖动了一个标签“输入密码”和一个文本字段(passCode)。我只是隐藏了后视图,除非密码是正确的。
import UIKit
class FirstViewController: UIViewController, UITextFieldDelegate {
override func viewDidLoad() {
super.viewDidLoad()
self.passCode.delegate = self
entryView.hidden = false
secretView.hidden = true
}
@IBOutlet weak var entryView: UIView!
@IBOutlet weak var secretView: UIView!
let secretCode = "X"
@IBOutlet weak var passCode: UITextField!
func textFieldShouldReturn(textField: UITextField!) -> Bool {
if textField.text == secretCode {
entryView.hidden = true
secretView.hidden = false
} else {
self.passCode.text = "Try Again!"
}
textField.resignFirstResponder()
return true
}
}