簡體   English   中英

如何從另一個類的ViewController中更新屬性(SWIFT)

[英]how to update a property from ViewController in my another class(SWIFT)

我搜索了但只看到OC版本,似乎應該使用NSNotificationCenter?

在ViewController類viewDidLoad函數中有一個textField,請參見以下內容:

     class ViewController: UIViewController {
        var textField1 = UITextField()
        override func viewDidLoad() {
        super.viewDidLoad()

        textField1.frame = CGRectMake(20, 70, 300, 500)
        textField1.text = "Default"        
        self.view.addSubview(textField1)

在另一個類ContactData中,有一個將在ViewController中調用的func getContacts,在這個func中,我需要更新textField1的texts屬性,當下面的ViewController.textField1.text =“ XXXXXX”不起作用時,我是IOS SWIFT上的新手,誰能幫助我解決這個問題?

class ContactData: NSObject {    
    func getContacts()
{ViewController.textField1.text = "XXXXXX"}

非常感謝你。

這里更多的是設計問題。 您的函數getContacts不應直接更新文本字段。 它應該返回聯系人字符串,並且視圖控制器應該調用此方法以獲取字符串並更新文本字段。

class ContactData: NSObject {    
    func getContacts() -> String
    {
         return "XXXXXX"
    }
}

在您的UIViewController中:

let myContact = ContactData()
textField1.text = myContact.getContacts()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM