我正在为iPhone / iPad构建通用的iOS配置应用程序。但是iPad的布局(“视图”)与iPhone的布局有很大不同。考虑到只有应用程序的外观(“视图”)改变了设备,我可以遵循哪种最有效的设计方法?
我已经看过的事情
我看过一种策略,根据使用的设备加载不同的View控制器。但考虑到设备之间的“控件”是相同的,只有应用程序的外观发生变化,这可能是一种矫枉过正。
使用函数自动根据需要将视图框调整为布局视图。这对我没有多大帮助,因为不仅需要更改视图的大小,还需要根据设备加载不同的视图。
保持viewController不变,但以不同方式配置viewController中的视图。现在这似乎是最好的方法,但应用程序有点沉重,从长远来看可能会变得非常混乱。或者有一种非常有效的方法吗?
这有设计策略吗? 或者有什么方法可以在优化工作的同时有效地实现这一目标?
答案 0 :(得分:0)
标准方法是为iPhone和iPad提供不同的XIB文件,如果您将其命名为正确,平台将自动选择该文件,例如: myview~iPhone.xib
和myview~iPad.xib
。
你担心效率低下:我不担心文件大小,因为编译的XIB非常紧凑。
在我的应用程序中,我主要使用这种方法,使用一些代码片段为每个平台添加或删除按钮。可以使用标准的struts-and-glue技术设置简单视图以自动调整大小。