Swift 使用图像查找数组的特定元素
我有一个程序,当你点击屏幕时显示一张随机卡片,然后从卡片组中移除该卡片。但我还想检查随机牌是否是牌组中的任何一张图片牌(比如杰克牌、国王牌、皇后牌或王牌),然后做一些事情,如果是其中的一张。有人知道我怎么做吗?当我尝试检查随机卡是否等于例如cardDeck[0](卡组中的第一张卡是图片卡)时,我得到一个错误: 无法将“UIImage”类型的值分配给“Int”类型 谢谢你的帮助 我的代码如下所示:Swift 使用图像查找数组的特定元素,swift,Swift,我有一个程序,当你点击屏幕时显示一张随机卡片,然后从卡片组中移除该卡片。但我还想检查随机牌是否是牌组中的任何一张图片牌(比如杰克牌、国王牌、皇后牌或王牌),然后做一些事情,如果是其中的一张。有人知道我怎么做吗?当我尝试检查随机卡是否等于例如cardDeck[0](卡组中的第一张卡是图片卡)时,我得到一个错误: 无法将“UIImage”类型的值分配给“Int”类型 谢谢你的帮助 我的代码如下所示: var cardDeck = [card1,card2,card2 etc....] var ra
var cardDeck = [card1,card2,card2 etc....]
var randomCard: Int = 0
var cardPosition = 0
//row1card1
@IBAction func row1card1tapped(_ sender: UITapGestureRecognizer) {
randomCard = Int.random(in: 0...51)
if cardDeck.count > randomCard + 1 {
if randomCard == cardDeck[0] {
//do stuff here
} else {
row1card1.image = cardDeck[randomCard+1]
cardDeck.remove(at: randomCard)
print("removed:" + "\(cardDeck[randomCard])")
score += 2
currentPoints.text = "\(score)"
}
您的randomCard变量是一个Int,您试图将其与cardDeck中的元素(图像)进行比较。这就是为什么会出现上述异常
if randomCard == 0 {
//do stuff here
}
你的名片卡是一组图像吗?@Subramanianamariappan是的,是:)哦,我明白了,谢谢。我尝试将其更改为if randomCard==cardDeck[#imageLiteral(resourceName:“AC”)],但随后出现了以下错误:无法为“[UIImage]类型的值下标'对于'UIImage'类型的参数,如果你知道我应该怎么做,你能帮我吗?你可以简单地单独检查索引值。然后我得到了这个错误:二进制运算符'=='不能应用于'Int'和'UIImage'类型的操作数。你是否尝试过像我更新的答案中那样检查索引?哦,当然我没有想到当然。谢谢顺便问一下,我如何在if语句中输入多个数字,例如,如果randomCard==0、5、7、19等等。。?