Swift какао-приложения Osx

В настоящее время я работаю над проектом быстрого какао OSX. В моем проекте у меня есть 31 NSimageViews с именем space0, space1, space2, space30. Каждый просмотр изображений имеет 3 возможных изображения, зеленое изображение, синее изображение и белое изображение. Что было бы наиболее эффективным способом присвоения изображения определенному виду изображения на основе переменной без выписывания каждого возможного сценария. Например, если переменная x = 10, я хочу назначить space10 изображение, а если переменная y = 20, назначить space20 изображение. Спасибо

1 ответ

Решение
func imgSpace(imgNumber:Int) -> NSImage? {
    if imgNumber ==  0 {return space00.image!}
    if imgNumber ==  1 {return space01.image!}
    if imgNumber ==  2 {return space02.image!}
    if imgNumber ==  3 {return space03.image!}
    if imgNumber ==  4 {return space04.image!}
    if imgNumber ==  5 {return space05.image!}
    if imgNumber ==  6 {return space06.image!}
    if imgNumber ==  7 {return space07.image!}
    if imgNumber ==  8 {return space08.image!}
    if imgNumber ==  9 {return space09.image!}
    if imgNumber ==  10 {return space10.image!}
    if imgNumber ==  11 {return space11.image!}
    if imgNumber ==  12 {return space12.image!}
    if imgNumber ==  13 {return space13.image!}
    if imgNumber ==  14 {return space14.image!}
    if imgNumber ==  15 {return space15.image!}
    if imgNumber ==  16 {return space16.image!}
    if imgNumber ==  17 {return space17.image!}
    if imgNumber ==  18 {return space18.image!}
    if imgNumber ==  19 {return space19.image!}
    if imgNumber ==  20 {return space20.image!}
    if imgNumber ==  21 {return space21.image!}
    if imgNumber ==  22 {return space22.image!}
    if imgNumber ==  23 {return space23.image!}
    if imgNumber ==  24 {return space24.image!}
    if imgNumber ==  25 {return space25.image!}
    if imgNumber ==  26 {return space26.image!}
    if imgNumber ==  27 {return space27.image!}
    if imgNumber ==  28 {return space28.image!}
    if imgNumber ==  29 {return space29.image!}
    if imgNumber ==  30 {return space30.image!}
    return nil
}
let x = 3
if let myImage = imgSpace(x) {
    yourOutleT.image = myImage
}
let y = 13
if let myImage = imgSpace(y) {
    yourOutleT.image = myImage
}
let z = 27
if let myImage = imgSpace(z) {
    yourOutleT.image = myImage
}
Другие вопросы по тегам