我得到了一个随机洗牌的游戏

@IBAction func playRoundTapped(sender: UIButton) {

    cardNamesArray = GKRandomSource.sharedRandom().arrayByShufflingObjectsInArray(cardNamesArray) as! [String]
    cardNamesArray2 = GKRandomSource.sharedRandom().arrayByShufflingObjectsInArray(cardNamesArray2) as! [String]



    let firstCardString:String = self.cardNamesArray[0]
    self.FirstCardImageView.image = UIImage(named: firstCardString)

    let SecondCardString:String = self.cardNamesArray2[1]
    self.SecondCardImageView.image = UIImage(named: SecondCardString)
    }

…这部分代码在纸牌匹配时得分,但当它们匹配时,我需要它再次洗牌。我可以在iAction SnapButton中使用iAction playRoundTapped吗?
@IBAction func SnapButtonTapped(sender: UIButton) {


        if firstRandomNumber == SecondRandomNumber {

        print("index match")

        self.playerScore += 1
        self.playerScoreLabel.text = String(self.playerScore)

        cardNamesArray.removeAtIndex(firstRandomNumber)
        cardNamesArray2.removeAtIndex(SecondRandomNumber)

            if cardNamesArray.count == 0 && cardNamesArray2.count == 0{


                print("user won")
                //alert box
                let alert = UIAlertController(title:"Level completed", message: "Your score is \(playerScore)", preferredStyle: UIAlertControllerStyle.Alert)

                alert.addAction(UIAlertAction(title:"next level", style: UIAlertActionStyle.Default, handler: nil))
                    self.presentViewController(alert, animated:true, completion:nil)

            }

    }

最佳答案

是的,你可以。IBAction只是一个具有特定签名和标记的方法,该标记告诉Interface Builder它可以连接到控件。你可以自己叫它。

07-25 22:49