我想访问viewController的UIElements(例如Labels和TextFields等)而不进行IBOutlet连接。
e.g。我在viewController中有一个UITextField,我希望像viewControllerName.textFieldName.text = "something I will set here"
一样访问它
或者作为Android findViewById("id of element")
的相同概念
我使用过“标签”,但它不符合我的要求。
答案 0 :(得分:0)
您将以编程方式创建UITextField,并以编程方式访问UITextFieldName.text =“Some”。
以编程方式Check This link
答案 1 :(得分:0)
是的,你可以在不进行IBOutlet连接的情况下访问viewController的UIElements(例如Labels和TextFeilds等)。首先给UIElement一个标签。 然后尝试这个。希望这会有所帮助:
如果您想在同一个viewController
中访问它let label = self.view.viewWithTag(4) as? UILabel
label?.text = "Hello there"
如果您想从其他viewController 访问它 在 firstViewControler
中 import UIKit
internal weak var FirstViewController: ViewController?
//in viewDidLoad
override func viewDidLoad() {
super.viewDidLoad()
FirstViewController = self
}
它可以在所有其他viewControllers中访问 然后在secondViewController
let newlabel = homeViewController?.view.viewWithTag(4) as? UILabel
newlabel?.text = "new change"