2016-07-04 43 views
-1

「可選的布爾類型,不能用作布爾;!測試零,而不是」比較本地圖片迅速

是我得到

我試圖做一個「老虎機」的錯誤應用程序,非常基本, 你按UIButton,三個圖像應該都隨機更改,如果3個匹配,打印「你贏了!」

import UIKit 

class ViewController: UIViewController { 

@IBOutlet weak var img1: UIImageView! 
@IBOutlet weak var img2: UIImageView! 
@IBOutlet weak var img3: UIImageView! 
@IBOutlet weak var rollBtn: UIButton! 

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. 
} 


@IBAction func onRollPress(sender: AnyObject) { 
    let randomRoll = ImgArray().getRandomImage() 
    img1.image = randomRoll 
    img2.image = randomRoll 
    img3.image = randomRoll 

    if (img1.image! == img2 && img3) { 
     print("You won!") 
    } 

} 

} 
+0

你應該向我們展示的代碼。 –

回答

0

如果你的圖像是在一個數組中,爲什麼不獲取圖像的索引並進行比較。或者你可以將圖像轉換爲base64字符串並進行比較。

編輯:不知道很多關於你的ImgArray類,這可能會爲你工作:

@IBAction func onRollPress(sender: AnyObject) { 
let randomRoll1 = ImgArray().getRandomImage() 
let randomRoll2 = ImgArray().getRandomImage() 
let randomRoll3 = ImgArray().getRandomImage() 

img1.image = randomRoll1 
img2.image = randomRoll2 
img3.image = randomRoll3 

let imgIndex1 = ImgArray().indexOf(randomRoll1) 
let imgIndex2 = ImgArray().indexOf(randomRoll2) 
let imgIndex3 = ImgArray().indexOf(randomRoll3) 

if (imgIndex1 == imgIndex2 && imgIndex3) { 
    print("You won!") 
} 
} 
+0

如果我是正確的,如果我使用我的圖像數組的索引,我將無法將它們與隨機生成的圖像進行比較? –

+0

它是一個真正的隨機圖像還是隨機選取數組中的圖像? – CaseyC585

+0

不,你是對的,我從我的數組中挑選一個隨機圖像,但是我不會在這種情況下比較img1.image和硬編碼索引號嗎? –