我需要访问并更改另一个视图控制器上存在的按钮的标题。这可能吗?如果是这样,我该如何做到这一点?
ViewController 1:
Class Home: UIViewController
{
@IBOutlet weak var testBTN: UIButton!
}
ViewController 2:
Home.testBTN // does not work I can't access the button from here
我认为我在目标C中找到了解决方案,但我不知道如何在swift中完成此任务 Access IBOutlet from another class
答案 0 :(得分:1)
VC 2(发送通知):
let updateNotificationString = "com.yourcompany.yourapp.updatebutton"
NSNotificationCenter.defaultCenter().postNotificationName(updateNotificationString, object: self)
VC 1(接收和更新):
在viewDidLoad中:
let updateNotificationString = "com.yourcompany.yourapp.updatebutton"
NSNotificationCenter.defaultCenter().addObserver(self, selector: "updateButton", name: updateNotificationString, object: nil)
然后创建一个函数:
func updateButton() {
testBTN.setTitle("New Title", forState: UIControlState.Normal)
}