我想决定是使用XIB还是完全使用代码设计我的视图。
到目前为止,我已经了解到,在接口构建器上设计视图时,它们是预先构建的,因此即使它们使用更多的内存,用户也会感觉到一切都更快。
人们说完全使用代码比较困难,但我发现这样做同样容易,所以我想知道是否有人在使用nib时体验到了一些真正的速度提升。
您有什么经验、建议等等吗?
谢谢!
除非有理由不使用XIB文件,否则我总是会使用它。这样可以轻松地在未来维护您的视图。
创建视图程序化的一些原因可能包括:
可能还有其他原因,但并不太多。
如果没有必要而程序化地创建视图,则会使其他开发人员难以弄清楚视图的外观和更改它。
IB和NIB在加载/卸载视图方面做了很多优化工作,但它主要是以最小化内存使用和用户感知速度为导向。例如,懒加载可能会使应用程序UI略微变慢,但它应该可以降低内存使用。这反过来可能会使大型应用程序的整体性能更好,并且非常受推荐,但很难以狭义的方式定义“性能”。同时也难以确定何时应该或不应该使用IB-有时你更应该在代码中完成。
IB或不讨论经常被忽视的一个元素是开发速度,特别是如果你有多个开发人员。在更大的团队/项目中,您可能会有一些开发人员专门从事应用程序基础设施、业务逻辑等方面的工作,还有一些开发人员专门从事UI方面的工作。在这种情况下,使用IB将使他们更容易独立工作,这应该可以提高总体开发效率。
我认为IB是iOS开发平台的核心部分。虽然并非在所有情况下都是正确的解决方案,但不知道如何使用IB将是一个真正的限制因素。