【问题标题】:What is the best practices when developing iphone and ipad app together?一起开发 iphone 和 ipad 应用程序时的最佳实践是什么?
【发布时间】:2015-11-17 19:14:16
【问题描述】:

我要创建一个同时支持 iPhone 和 iPad 的应用程序。在继续之前,我只想了解这两种应用开发的最佳实践。

以下是我知道的几点:

  • 假设我有一个表格视图,它显示 N 条记录并将其称为 PAGE-1。当用户点击单元格时,它将加载 PAGE-2 以显示有关点击记录的详细信息。这是每个应用都使用的更常见的场景。
  • 对于 iPad,情况并非如此。我可以在同一页面中显示 PAGE-1 和 PAGE-2。(考虑横向模式)
  • 因此,iPhone 的 PAGE-1 将显示在 iPad 的左侧面板中,而 iPhone 的 PAGE-2 将显示在 iPad 的右侧面板中。

结论:

  • 所以,我可以为 iPhone 和 iPad 创建一个通用类。这将处理 PAGE-1 对 iPhone 和 iPad 的通用功能。
  • 设备特定的功能可以分为 iPhone 和 iPad 的不同类。
  • 除此之外,网络相关的方法、解析器、实用方法、类别、自定义控制器通常可以为 iPhone 和 iPad 编写。
  • iPad 的唯一插件是,它应该有一个控制器来保存和处理 PAGE-1 和 PAGE-2。这样可以确保 PAGE-1 不包含 PAGE-2,并且它们都像 iPhone 的 PAGE-1 和 PAGE-2 一样独立。

请参考下面的附件图片,它将清楚地展示。

问题:

  • 这种方法正确吗?
  • 我真的不知道 iPad 的“容器”控制器。我应该需要它吗?或者有没有其他更好的建议来有效地对事物进行分组?

这可能是一个基本问题,但我需要澄清一下以便更好地进行代码练习。

谢谢

【问题讨论】:

    标签: ios iphone ipad architecture


    【解决方案1】:

    听起来您不需要特定的页面 1 和 2 子类,但这取决于每个设备上页面之间的差异。集合视图可能更适合您的需求,因此您可以简单地设置项目宽度,布局会将您的内容组织到适当的列中。

    听起来更像是您需要的只是顶层的 2 个不同容器类,它们决定如何显示页面,或者更具体地说,决定显示多少页面以及它们在屏幕上的位置。对于 iPhone 来说这很简单,对于 iPad 来说稍微复杂一些(主要是由于旋转处理)。

    还请注意,如果您在 Xcode 中创建一个新的主从项目并要求它支持 iPhone 和 iPad,您将看到拆分视图控制器(可选)用于这种情况。通过让应用程序委托决定是否使用“特殊”容器(对于 iPad),这绕过了对 2 个容器类的需求。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-24
      • 2011-12-01
      • 2012-05-10
      • 2012-01-17
      • 1970-01-01
      • 2011-08-12
      相关资源
      最近更新 更多