我有非常冗余的代码,我需要简化,因为我正在扩展,我不知道如何做到这一点。我有很多按钮更新,图像经常更改。根据点亮的按钮和程序中发生的事情,我会立即更改许多按钮的状态。我想创建一个可以迭代函数的多个部分的函数。 。例如,下面是一个代码块,每个按钮重复一次,我在这一点上将是48。
if sharedData.Channel1Mute != nil {
if sharedData.Channel1Mute == "True" {
self.Channel1Button.setImage(UIImage(named: "w1"), for:UIControlState())
}
else {
self.Channel1Button.setImage(UIImage(named: "g1"), for:UIControlState())
}
if sharedData.Channel2Mute != nil {
if sharedData.Channel2Mute == "True" {
self.Channel2Button.setImage(UIImage(named: "w2"), for:UIControlState())
}
else {
self.Channel2Button.setImage(UIImage(named: "g2"), for:UIControlState())
}
...
...
ect
...
这不是正确的编码,但我希望这能起到这样的功能,这将是更短和可扩展的。 。 。
for NUMBER in 1...48 {
if sharedData.Channel[NUMBER]Mute != nil {
if sharedData.Channel[NUMBER]Mute == "True" {
self.Channel[NUMBER]Button.setImage(UIImage(named: "w[NUMBER]"), for:UIControlState())
}
else {
self.Channel[NUMBER]Button.setImage(UIImage(named: "g[NUMBER]"), for:UIControlState())
}
}
这是令人沮丧的,因为我当前的代码完全相同的事情是48次,但我必须用每个副本中的if语句中的每个数字重写整个代码。