在 Cocoa 应用程序的 Interface Builder 中,“库”窗格中有两个对象 - 垂直分隔符和水平分隔符。这两个对象很高兴必须按照我喜欢的方式布置视图。然而,当我在一两年前开始使用 Cocoa Touch 时,我注意到这两个对象并不存在。
xib
为什么加载Cocoa Touch 时,Cocoa 环境中对象库中存在的垂直和水平分隔符不存在?
(作为让步,我知道我可以使用 UIImageView 完成相同的任务,但并不完全相同。)
在 Cocoa 应用程序的 Interface Builder 中,“库”窗格中有两个对象 - 垂直分隔符和水平分隔符。这两个对象很高兴必须按照我喜欢的方式布置视图。然而,当我在一两年前开始使用 Cocoa Touch 时,我注意到这两个对象并不存在。
xib
为什么加载Cocoa Touch 时,Cocoa 环境中对象库中存在的垂直和水平分隔符不存在?
(作为让步,我知道我可以使用 UIImageView 完成相同的任务,但并不完全相同。)
为 iPhone 设计应用程序的范式与 mac 不同,因此您不能期望 IB 对象完全相同。
如果您尝试使用垂直分隔符,我建议您重新考虑您的 UI,它可能不是您的用户所期望的,iPhone 屏幕的尺寸是有限的,特别是水平方向,所以最好垂直扩展您的内容,这就是为什么 UITableView 是最常用的信息显示方式之一。
(我知道 iPad 没有这个限制,但这可能就是 UISplitViewController 存在的原因)。
Cocoa 和 Cocoa Touch 不使用相同的库来构建 UI。Cocoa 提供了 Application Kit,其中包括 NSView 及其子类。Cocoa Touch 提供了 UIKit,其中包括 UIView 及其子类。
NSView 子类之一是 NSBox;因此,UIKit 中不存在此类。Xcode 的 AppKit 对象库中的两个“分隔符”都只是单点宽/高的 NSBox 实例;因此,这些对象不存在于 Xcode 的 UIKit 对象库中。