iOS 动态 UI 简单来说?

标签 ios swift

这可能过于基础或需要重新措辞。我正在学习 Swift 和 iOS 编程,并开发了一个可以在我的 iPhone 5 上成功运行的基本应用程序。该应用程序由一个标签、一个按钮和一个 UIImageView 组成。它在我的 iPhone 5 上看起来就是我想要的样子。

我只是通过尝试解决了大部分问题,因此我以编程方式创建了所有这些元素。代码如下所示:

let banner = UILabel(frame: CGRect(x: 10, y: 10, width: 300.0, height: 75.0))
let button = UIButton(frame: CGRect(x: 45, y: 75, width: 235.0, height: 60.0))
let imageView = UIImageView(frame: CGRect(x: 22, y: 150, width: 280.0, height: 410.0))

然后我在 viewDidLoad 中配置它们,让它们显示内容。

现在的问题是……当在不同的设备上运行时,如何使它们的大小都合适?我可以在我的 iPad Mini 上加载该应用程序,但它都被挤到了 View 的左侧。所以我需要做一些动态布局,但不确定从哪里开始。

感谢所有帮助!

最佳答案

无需使用 initWithFrame: 构造函数显式创建 View 大小,您可以通过编程方式创建 View 并使用 NSLayoutConstraints 来自动布局 View ,就像您使用使用 Interface Builder 自动布局。参见 Apple 的 Auto Layout Guide了解更多详情。

关于iOS 动态 UI 简单来说?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24978163/

相关文章:

ios - 如何使用 Urban AirShip (Swift) 获取 appDelegate

ios - 可以获取位置,但不能获取航向

ios - 如何获取kCVPixelFormatType_DepthFloat16的值(半点 float )?

swift - 在 Swift 5 中由 UITabBarController 控制的 UIViewController 之间传递数据

ios - 当json包含没有键的数组时如何检查swiftyJSON中是否存在键

ios - 接收有关添加的 Firebase 数据库子级的推送通知

ios - Swift 3 - 发送同步http请求

swift - 如何在 cell.swift 中获取 indexPath.row

ios - 通过 segue 传递错误的数据

ios - Unity 游戏在 iOS 上加载时崩溃