UITableView 中的大小 类 和故事板

Size classes and storyboard in UITableView

当我的 phone 处于纵向模式时,我需要向我的 UITableViewCell 添加 3 个标签,但当它处于横向模式时,它应该显示 5 labels。当相同的 cell 在 ipad 景观中时,只是为了添加复杂性,它应该显示 6 labels。它应该看起来像这样。

iPhone 肖像

iPhone横向

iPad横向

我可以使用不同的 UITableViewCell XIB 来做到这一点,但我想使用大小 类 和 storyboard 来做到这一点。是否有任何示例/教程/建议可以遵循?

你要找的是 Apple 的这个教程:

https://developer.apple.com/library/ios/recipes/xcode_help-IB_adaptive_sizes/chapters/EnableAndDisableViews.html

此面板将安装给定尺寸的给定视图 class,换句话说,确保它存在或不存在:


(来源:apple.com

这仍然没有机会为 iPad 更改它,特别是因为尺寸 classes 无法区分,但也许你可以像我认为的那样走私 iPhone 在该模式下它的高度为 Compact,而 iPad 和 iPhone 6(S) Plus 为 Regular。因此,您需要在宽度中添加额外的标签,查看常规宽度 高度的组合。

还要确保你安装正确的布局约束的方式与在一个场景中你 space 到下一个标签的方式大致相同,而在下一个场景中标签消失了,你需要 space 它到右边。