ios - 在 Swift 中批量创建变量

标签 ios swift uikit

所以我正在用 Swift 编写我的第一行代码,我想制作一个游戏,你需要倾斜设备来进行重力移动,这样一来,球就会在绕过障碍物时掉落到地板上。

我一直在寻找不同的方法,我找到了一种只需使用 let 就可以设置障碍的方法,例如(我使用的是 UIKit)

let barrier1 = UIView(frame: CGRect(x: 0, y: 300, width: 20, height: 20)) barrier1.backgroundColor = UIColor.redColor() View .addSubview(barrier1)

以这种方式声明每个障碍需要大量代码,我希望是否有一种方法可以在 while 循环中执行此操作,每次循环运行时,x = x + 1 已声明,您可以批量创建变量。谁能帮我?谢谢!

最佳答案

这就是数组的用途。声明一个类型为 [UIView] 的名为 barriers 的变量,然后将每个新障碍附加到此数组。

var barriers:[UIView] = []

for i in 1...20 {
    let newbarrier = UIView(frame: CGRect(x: 0, y: 300 + i * 30, width: 20, height: 20))
    newbarrier.backgroundColor = UIColor.redColor()
    view.addSubview(newbarrier)
    barriers.append(newbarrier)
}

// Now you can refer to each barrier by its index: barriers[0], barriers[1]
// up to barriers[19]

关于ios - 在 Swift 中批量创建变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29330383/

相关文章:

ios - 将 TapGestureRecognizer 添加到除 UICollectionView 单元格之外的整个 View

ios - 为什么来自 Objective-C 类的类型为 - (id) 的 initTESTING() 在 Swift 中调用失败?

ios - 为什么使用 Core Graphics 绘制直线我得到 "dashed"行?

ios - 从容器 View 中的另一个 View Controller 加载 View Controller

swift - 扩展 NSLayoutAnchor 编译错误

ios - 创建一个基于步骤的 View Controller 流程

javascript - 通过 Phonegap 从本地网络服务器提供内容

ios - 如何在 Swift 2.2 中使用 ResearchKit 在自定义事件步骤中禁用下一步按钮?

ios - 在 swift 中使用 Objective-C block

swift - 看不到 UIView 的 UIView subview