针对 iPhone 4s 和 5/5C/5s 屏幕尺寸进行开发的最佳实践



iPhone高度的不同屏幕尺寸构建单独的视图是否更好。还是创建一个 #define IS_IPHONE5 并根据手机的高度调整视图的代码更好?任何其他想法将不胜感激。

您是否考虑过使用自动布局?这是苹果推荐的方法。

你可以在网上找到一些抨击自动布局的帖子。你不应该被他们吓倒,因为据我所知,他们大多可以分为两组:

  • 作者对自动布局的错误理解,
  • 在 Xcode 4 的 Interface Builder 中,自动布局实现很差(在 Xcode 5 中变得更好了)。

使用自动布局是不错的选择。除此之外,您应该创建不同的视图并根据设备和屏幕使用它们。

为不同的设备屏幕分辨率创建不同的视图不是一个好主意。当涉及到屏幕尺寸时,您应该尽量避免常量。如果苹果决定明天推出具有不同分辨率的6英寸平板手机,则必须更新您的应用程序并为该分辨率创建一个全新的视图。

如果您不再需要支持iOS5,那么您绝对应该选择自动布局。看看这个 Ray Wenderlich 教程,以更好地了解自动布局:

http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2

如果您仍然需要支持 iOS5,请使用自动调整大小掩码(上面的教程还简要解释了自动调整大小),它有其限制,但您可以在 UIViewController 中的 viewDidLayoutSubviews 和 UIViews 中的 layoutSubviews 中更正。

最新更新