2017-04-21 79 views
0

我正在構建一個框架。我需要通過代碼從UIViewcontroller獲取IBOutels列表。我寫了InterfaceOutletsReadable協議。如果框架用戶符合這個協議,我必須從ViewController讀取IBOutlets列表。如何以編程方式獲取UIVIewController的IBOutlet列表

protocol InterfaceOutletsReadable { 
    ///Read the outlets objects 
    func readOutlets() 
} 
extension InterfaceOutletsReadable { 
    //TODO:- Stuck at this stage. Here I have to read the viewcontroller IBOutlets 
} 
class HomeViewController: InterfaceOutletsReadable { 
    @IBOutlet weak var userNameTextField: UITextField! 
    @IBOutlet weak var passwordTextField: UITextField! 
    @IBOutlet weak var errorLabel: UILabel! 
} 

編輯:我並不想從IBOutlet中收藏列表中。有沒有辦法以編程方式獲得所有網點?

+0

那麼問題是什麼? –

+0

@dahiya_boy它是一個框架項目。我必須從ViewController獲取插座的列表。不通過IBOutlet集合。如何獲得? –

回答

1

你可以拿IBOutletCollection一個textField並連接到所有others.It維護數組插座,你可以通過索引訪問。

0

@IBOutlets僅在設計時存在,即使在編譯時也沒有。因此,以所需方式獲得所有網點是不可能的。出口與其他變量沒有區別。

如果您需要在您的HomeViewControllerreturn Array中實施readOutlets()的網點列表包含您想要的任何變量。

相關問題