SwiftUI vs Interface Builder和故事板[关闭]
Posted
技术标签:
【中文标题】SwiftUI vs Interface Builder和故事板[关闭]【英文标题】:SwiftUI vs Interface Builder and storyboards [closed] 【发布时间】:2020-01-16 09:32:08 【问题描述】:我是 ios 开发新手,我使用故事板和界面构建器来设计我的应用程序 UI。但现在我看到很多人都在使用 SwiftUI。我搜索了 SwiftUI 并发现了一些关于它的观点,因为 SwiftUI 与新的 Xcode 设计工具无缝协作,以使我们的代码和设计完美同步。但我无法将它与 Interface builder & Storyboard 进行比较。 SwiftUI 相对于 Interface Builder 和 Storyboard 的优缺点是什么? SwiftUI 会完全移除 Interface Builder 和 storyboards 吗?
【问题讨论】:
SwiftUI 的一大缺点是你的应用只能在 iOS 13 或更高版本上运行。还有更多关于 UIKit 的信息、示例和 3rd 方控件 twitter.com/MengTo/status/1217731240524046341 我会把这个 Twitter 帖子留给你 :) 在我看来,我从 Storyboard 开始,最后以简单的编码是创建图形组件的最佳方式 :D 但是 SwiftUI 是一个很棒的处理工具,尝试学习它,您将创造出伟大的东西:D 【参考方案1】:在故事板和xib
等界面构建器中,您可以看到自己在做什么。您获取一个组件,然后将其添加到情节提要中,这就是您设计 UI 的方式,但是如果您以编程方式执行相同的操作,那么它会变得更加困难,因为您什么都看不到,而且您必须有经验才能这样做。每次你必须构建一个应用程序才能看到UI
中的更改,但SwiftUI
解决了这个问题,因为它会在你编写代码时不断更新。为了解决这个问题,Apple 提出了SwiftUI
,它可以帮助您查看正在发生的事情。任何人都可以从Storyboard
移动到SwiftUI
。
就个人而言,我从Storyboard
开始,然后转到XIB
,然后我转到Flutter
,这完全不同,SwiftUI
的灵感来自Flutter
。您必须记住,SwiftUI
支持从 iOS 13
开始。你必须从storyboard
开始,然后当你获得经验后,你可以移动到SwiftUI
。
更新:另外,还有另一种开发 UI 的方法,那就是通过编程 UI 编码。我已经以编程方式开发 UI 已经很长时间了,就个人而言,它有助于更多地理解 UI 的概念,并且您可以开始添加许多扩展,这将使您的项目在后期易于维护。当您在一个小组中开发时,界面构建器会在很多时候引发合并冲突,这很快就会变得很痛苦。 (2020 年 10 月 30 日)
【讨论】:
以上是关于SwiftUI vs Interface Builder和故事板[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Thread class vs Runnnable interface(转)
TypeScript Interface vs Type知多少
qt5 + vs2015自定义控件错误:undefend interface