как изменить изображение uiimage при нажатии кнопки в swift?

Я пытаюсь изменить элемент управления uiimage, содержащий изображение, нажав кнопку в swift. Для этого я написал простое приложение "угадайте, сколько пальцев я держу". Я прочитал несколько статей stackoverflow, но не смог решить проблему. Ниже вы можете увидеть мой код и мой ui. Как изменить изменение изображения при нажатии?

вот мой код:

import UIKit

class ViewController: UIViewController {

    @IBOutlet var myImageView: UIImageView!
    @IBOutlet var inputField: UITextField!
    @IBAction func clickedGuessButtonAction(sender: AnyObject) {
        println("Guess button clicked")
        var randomX = Int(arc4random()%6)
        println("randomX = (randomX)")
        var guess = inputField.text.toInt();

        let image0 = UIImage(named: "images/qm.jpg")
        let image1 = UIImage(named: "images/tick.jpg")
        let image2 = UIImage(named: "images/cross.jpg")

        if((inputField.text) != nil){
            if(guess == randomX){
                println("correct")
                myImageView.image=UIImage(named: "tick.jpg") // THIS IS NOT WORKING
                myImageView.image=image1                     // THIS IS NOT WORKING TOO
                inputField.resignFirstResponder();// hides keyboard
            }
            else
            {
                println("wrong")
                myImageView.image=UIImage(named: "cross.jpg")
                inputField.resignFirstResponder();//hides keyboard
            }
        }
        else{
            println("invalid input. requires integer only")
            inputField.resignFirstResponder();// hides keyboard
        }
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

и вот мой интерфейс:

enter image description here

3 ответов


вам не нужно указывать ни имя каталога активов, ни расширение файла изображения. Попробуйте удалить их. Например,

myImageView.image = UIImage(named: "tick")

Это может зависеть от версии Xcode вы используете. Для меня сработало следующее:

ImageView.image = UIImage(named: "Elephants.jpg")

В Swift:

myImageView = "nameOfImage";