【发布时间】:2011-04-16 08:48:13
【问题描述】:
我对 UIWIndow 的不寻常视图层次结构感到有些困惑。
如果有任何人参考了苹果 UIKit 的 UIWindow 参考,那么 UIView 就是 UIWindow 的超类
NSObject->UIResponder->UIView->UIWindow.
但是当一个人在 XCode 中创建一个新项目时,只有一个 MainWindows.xib,它包含项目中的其余视图。这意味着 UIWindow 是 UIView 的超类。所以 UIWindow 是子类和父类UIView.这对任何人来说都非常令人困惑。
那么任何人都可以对此有明确的想法。
【问题讨论】:
-
“父母”是一个重载的术语。说到继承,父类和超类是一样的,所以
UIView是UIWindow的父类或者超类。在谈论聚合或组合时,父类是其实例包含其他实例的类,例如包含其他视图的视图(或窗口)。在 Cocoa 中,对此的命名法是 superview(包含其他视图的视图)和 subview(包含在另一个视图中的视图)。两个定义都是正交的,彼此独立。
标签: ios uiview uikit hierarchy uiwindow