Swift:在不创建 Outlet 的情况下将按钮添加到数组



我是 Swift 编程的新手。

我创建了一个具有多个相同按钮的应用程序。我创建了一个带有操作的按钮,然后多次复制此按钮,以便它使用相同的操作。

按下其中一个按钮时,按钮的图像会发生变化(从"image1"变为"image2"),并且按钮将被禁用。

到目前为止一切都很好。

然后,我尝试创建一个重置按钮,其中再次启用已按下的按钮,并且它们的图像更改回"image1"。

为此,我为单个按钮创建了一个收集出口,然后逐个添加其他一些按钮。

@IBOutlet var mybuttons: [UIButton]!

据我了解,这会创建一个带有按钮的数组。 然后,我遍历这个数组并更新图像并启用按钮,并循环:

for myBubble in self.bubble

现在,我的问题是:与其将每个按钮拖到插座集合中,不如在按下它们时将它们添加到数组中,然后在该数组上运行?

我试图创建一个数组

var mybuttons: [UIButton]!

然后在按下按钮时使用 append(发件人),但这会产生致命错误。

如前所述,我可以通过简单地将所有内容添加到插座集合来解决此问题,但想知道是否有更优雅的方法可以做到这一点,因为有很多按钮。

如前所述,我是这方面的新手。

提前谢谢。

此致敬意 托马斯

您刚刚声明了按钮数组,但尚未初始化它:

var myButtons = [UIButton]()

这样,您可以声明并初始化一个空数组,然后就可以开始向其追加对象。

最新更新