2017-06-02 97 views
-6

如果我有三個UIViews,A,B和C. C是B的子視圖。B是A的子視圖。什麼是超級景觀?

B是C的超級視圖還是A的超級視圖?

這是正確的說法嗎?超視圖是不是子視圖的任何視圖?

謝謝。

+0

您沒有顯示任何幫助。谷歌搜索「Swift是一個超級視圖」給了我你的問題的確切答案。 –

+0

我坐在她的視頻課程上,所以我不確定我怎麼能證明我的努力,尤其是考慮到我對這個問題的搜索沒有任何結果。 –

回答

0

不,A是B的上海華,和B是C^

viewA.addSubview(viewB)  
viewB.addSubview(viewC) 
+0

非常感謝! –

0

SuperView把你可以發現這一點使用superview屬性:

class MyView: UIView { 
    var me = "" 
    func printMe() { 
     print("I am \(me)") 
    } 

    init(me: String) { 
     self.me = me 
     super.init(frame: CGRect(x: 0, y: 0, width: 0, height: 0)) 
    } 

    required init?(coder aDecoder: NSCoder) { 
     fatalError("init(coder:) has not been implemented") 
    } 
} 
let viewA = MyView(me: "A") 
let viewB = MyView(me: "B") 
let viewC = MyView(me: "C") 

viewA.addSubview(viewB) 
viewB.addSubview(viewC) 

let superviewOfB = viewB.superview as! MyView 
let superviewOfC = viewC.superview as! MyView 

superviewOfB.printMe() 
superviewOfC.printMe() 

打印:

我是A

我是B