代码之家  ›  专栏  ›  技术社区  ›  Henrik Erlandsson

应用程序开发:总是子类,总是从NIBS加载-警告?

  •  0
  • Henrik Erlandsson  · 技术社区  · 14 年前

    这是CocoaTouch(等),iPhone,Xcode。

    在完成我的第一个商业iPhone应用程序后,我正在努力寻找一种从头开始和扩展应用程序的方法,随着应用程序规格的变化,它提供了最线性的开发(即最少的代码、类和资源的废弃、重新编写或重新组织),我了解了更多(主要是关于Cocoa Touch和其他类和组件的内容)。NTS的设计是为了能够和限制其定制)。

    所以。文件,新项目。基于窗口的空白应用程序?创建我需要的控制器,必要时使用.xib,这样我可以将它们本地化,并在ib中执行客户请求的更改?然后总是对每个类进行子类化,除了那些极不可能定制的类?(我指的是框架类,如uibutton、cllocation等。)

    这个问题是一个通用的“方法”类型的问题,所以我很乐意听取您发现的有用的开发实践。您是否有任何提示,您发现哪些“可使用组件”在后续项目中变得非常有用?

    客户机通常用“首先,这个屏幕出现,然后你可以点击这个按钮,在新屏幕上你可以选择…”(等等)条款。从那里到重要的早期应用程序构建选择(即“功能特性、视觉描述到开放式应用程序架构”),有没有什么好的指导呢?

    例如,在我的应用程序中,我从导航栏,到带有项目的工具栏,再到带有两个自定义子视图的工具栏,以适应功能特性和视觉描述。也许你也做过这样的事,有什么建议可以提供?

    我也在寻找开放式的方法来共享大型(“加载的数据”)对象,甚至是简单的布尔值,在控制器和调用另一个控制器中的方法之间,特别是启动动画和加载等过程(例如:在确保动画是星形的之后,从第二个选项卡viewcontroller中的URL触发加载Ted在第一个选项卡viewController中),因为这两个特性适用于您提倡的应用程序架构构建方法。

    任何方便的指点都值得赞赏。谢谢大家。

    1 回复  |  直到 14 年前
        1
  •  0
  •   Henrik Erlandsson    14 年前

    结束这个,因为没有一个正确的答案,更适合其他论坛,如果我知道它存在时,我问:)

    如果你想知道我最后使用的方法,基本上是这样的:

    1. 基于窗口的空白应用程序
    2. 导航控制器控制所有,无论我是否需要(不使用时隐藏)
    3. 选项卡控制器(如有必要)
    4. 把一切联系起来——我知道,这没用。
    5. 设置并检查自动旋转,以后可能会添加到某些视图中。
    6. 为每个视图添加一个带有XIB的ViewController,您永远不知道他们何时需要在某个地方添加一个额外的按钮。复制代码比制作执行所有列表导航等操作的Max超动态可调TableViewController更容易。
    7. 仅当内容不同时(如细节视图控制器),才重新使用视图控制器。
    8. 通过编写函数和方法最小化每个视图控制器中的代码,并将它们推送到共享的.m中。
    9. 除了子类化的内容外,所有共享的内容最终都会出现在应用程序委托中。
    10. 模态视图控制器总是动态创建的,从来没有XIB。