[英]access property from another class
我有一個這樣的自定義快速班
class NichedHelper: NSObject {
private var _theController:UIViewController? = nil
var theController:UIViewController? {
get {
return self._theController
}
set {
self._theController = newValue
}
}...
它具有這樣的實現功能和_theController
傳遞繼承了UIViewController的Lobb類
func DoPump(from: String, theBoard: CGRect, overide: Bool) {
let abil:AnyObject = _theController!
abil.bottomConst.constant = -80
}
拋出錯誤'AnyObject' does not have a member named 'bottomConst'
。
因為我不知道這種技術的英文單詞,所以這將是我的第一個問題。
我的第二個問題是,如果我確定Lobb類(或其他類)是否有一個名為bottomConst的變量,我該如何從NichedHelper類訪問它?
您已將_theController聲明為private,刪除該聲明為
var _theController:UIViewController!
//這就是我們快速滾動的方式;)再見Objective-C
我不知道您到底想做什么,為什么不擁有兩個UIViewController
實例。 因此,我無法回答您的第一個問題,但是關於第二個問題,您必須將對象UIViewController
轉換為UIViewController
對象:
func DoPump(from: String, theBoard: CGRect, overide: Bool) {
let abil:AnyObject = _theController as! UIViewController
abil.bottomConst.constant = -80
}
如果您在extension
中將bottomConst
屬性聲明為UIViewControllers
的變量,則這至少應該消除編譯錯誤(因為它們通常沒有此變量)。
好吧,我從將UIViewController
傳遞給NSLayoutConstraint
進行了NSLayoutConstraint
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.