Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何对照现有阵列Swift 3.0检查按下按钮的顺序_Arrays_Swift_Xcode_Button - Fatal编程技术网

Arrays 如何对照现有阵列Swift 3.0检查按下按钮的顺序

Arrays 如何对照现有阵列Swift 3.0检查按下按钮的顺序,arrays,swift,xcode,button,Arrays,Swift,Xcode,Button,我想对照现有数组检查按下按钮的顺序(它们都有标签)。例如,我有一个带有1-9和9个按钮的数组,我想知道用户按的顺序是否正确。如果没有,那么我将返回一个错误。这看起来很简单,但我仍在学习,已经耗尽了我的资源。提前谢谢!我已经设法取得进展,并使按钮打印到控制台上的标签,但一个小错误似乎发生了我似乎无法让他们都在一个数组中,他们都是单独打印 @IBAction func onePressed(_ sender: Any) { print("cell 1 was pressed whil

我想对照现有数组检查按下按钮的顺序(它们都有标签)。例如,我有一个带有1-9和9个按钮的数组,我想知道用户按的顺序是否正确。如果没有,那么我将返回一个错误。这看起来很简单,但我仍在学习,已经耗尽了我的资源。提前谢谢!我已经设法取得进展,并使按钮打印到控制台上的标签,但一个小错误似乎发生了我似乎无法让他们都在一个数组中,他们都是单独打印

@IBAction func onePressed(_ sender: Any) {
        print("cell 1 was pressed while it showed \(shuffledArray[0])")
    }
这个问题现在已经解决了!谢谢你的帮助!这是工作代码

 @IBAction func pressed(_ sender: UIButton) {
    //print("cell  was pressed while it showed \(shuffledArray[0])")

    switch(sender.tag){

    case 1:
        order.add(sender.tag)//adding to nsmutable array use add or at a specific index use insert
        print(order)
        self.oneLabel.backgroundColor = UIColor.white

    case 2:
        order.add(sender.tag)
        print(order)
        self.twoLabel.backgroundColor = UIColor.white

    case 3:
        order.add(sender.tag)
        print(order)
        self.threeLabel.backgroundColor = UIColor.white

    case 4:
        order.add(sender.tag)
        print(order)
        self.fourLabel.backgroundColor = UIColor.white

    case 5:
        order.add(sender.tag)
        print(order)
        self.fiveLabel.backgroundColor = UIColor.white

    case 6:
        order.add(sender.tag)
        print(order)
        self.sixLabel.backgroundColor = UIColor.white

    case 7:
        order.add(sender.tag)
        print(order)
        self.sevenLabel.backgroundColor = UIColor.white

    case 8:
        order.add(sender.tag)
        print(order)
        self.eightLabel.backgroundColor = UIColor.white

    case 9:
        order.add(sender.tag)
        print(order)
        self.nineLabel.backgroundColor = UIColor.white

    default :
        break
    }

    if order.count == 9 {
        print(order.count)
        let indexOfShuffled = [1,2,3,4,5,6,7,8,9]
        let combined = zip(shuffledArray, indexOfShuffled).sorted {$0.0 < $1.0}
        print(combined)

        // use map to extract the individual arrays
        let sortedIndexOfShuffled = combined.map {$0.1}
        let sortedShuffledArray = combined.map {$0.0}

        print(sortedIndexOfShuffled)  // "[1.2, 1.5, 2.4, 10.9, 20.0]"
        print(sortedShuffledArray)  // "[1, 3, 0, 0, 2]"

        if order == sortedIndexOfShuffled as! NSMutableArray{
            self.oneLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.twoLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.threeLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.fourLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.fiveLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.sixLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.sevenLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.eightLabel.setImage(UIImage(named: "tick.png"), for: .normal)
            self.nineLabel.setImage(UIImage(named: "tick.png"), for: .normal)
        }else{
            self.oneLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.twoLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.threeLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.fourLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.fiveLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.sixLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.sevenLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.eightLabel.setImage(UIImage(named: "cross.png"), for: .normal)
            self.nineLabel.setImage(UIImage(named: "cross.png"), for: .normal)
        }
    }
}
@iAction func已按下(u发送方:ui按钮){
//打印(“单元格显示\(ShuffleArray[0])时被按下)
开关(sender.tag){
案例1:
order.add(sender.tag)//添加到nsmutable数组时使用add或在特定索引处使用insert
打印(订单)
self.oneLabel.backgroundColor=UIColor.white
案例2:
order.add(sender.tag)
打印(订单)
self.twolable.backgroundColor=UIColor.white
案例3:
order.add(sender.tag)
打印(订单)
self.threeLabel.backgroundColor=UIColor.white
案例4:
order.add(sender.tag)
打印(订单)
self.fourLabel.backgroundColor=UIColor.white
案例5:
order.add(sender.tag)
打印(订单)
self.fiveLabel.backgroundColor=UIColor.white
案例6:
order.add(sender.tag)
打印(订单)
self.sixLabel.backgroundColor=UIColor.white
案例7:
order.add(sender.tag)
打印(订单)
self.sevenLabel.backgroundColor=UIColor.white
案例8:
order.add(sender.tag)
打印(订单)
self.eightLabel.backgroundColor=UIColor.white
案例9:
order.add(sender.tag)
打印(订单)
self.nineLabel.backgroundColor=UIColor.white
违约:
打破
}
如果order.count==9{
打印(订单数量)
设indexOfShuffled=[1,2,3,4,5,6,7,8,9]
let combined=zip(shuffledArray,indexOfShuffled)。排序{$0.0<$1.0}
打印(合并)
//使用map提取各个数组
让sortedIndexOfShuffled=combined.map{$0.1}
让sortedShuffledArray=combined.map{$0.0}
打印(sortedIndexOfShuffled)/“[1.2,1.5,2.4,10.9,20.0]”
打印(sortedShuffledArray)/“[1,3,0,0,2]”
如果order==sortedIndexOfShuffled为!NSMutableArray{
self.oneLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.twolable.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.threeLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.fourLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.fiveLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.sixLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.sevenLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.eightLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
self.nineLabel.setImage(UIImage(名为:“tick.png”),用于:。正常)
}否则{
self.oneLabel.setImage(UIImage(名为:“cross.png”),用于:.normal)
self.twolable.setImage(UIImage(名为:“cross.png”),用于:.normal)
self.threeLabel.setImage(UIImage(名为:“cross.png”),用于:。正常)
self.fourLabel.setImage(UIImage(名为:“cross.png”),用于:.normal)
self.fiveLabel.setImage(UIImage(名为:“cross.png”),用于:.normal)
self.sixLabel.setImage(UIImage(名为:“cross.png”),用于:.normal)
self.sevenLabel.setImage(UIImage(名为:“cross.png”),用于:。正常)
self.eightLabel.setImage(UIImage(名为:“cross.png”),用于:.normal)
self.nineLabel.setImage(UIImage(名为:“cross.png”),用于:.normal)
}
}
}

从使用此按钮开始(将Any更改为UIButton——假设您正在使用此处的按钮,如果没有,请使用实际类型)

然后

您可能希望保留索引(而不是使用上面的0)

添加属性

var buttonPressedIndex = 0
然后


从使用这个按钮开始(将Any改为UIButton——假设您在这里使用的是一个按钮,如果不是,则使用您的实际类型)

然后

您可能希望保留索引(而不是使用上面的0)

添加属性

var buttonPressedIndex = 0
然后

var buttonPressedIndex = 0
if sender.tag == shuffledArray[buttonPressedIndex] {
  // the button's tag is the next one in the array
  buttonPressedIndex += 1 // go to next button in array
} else {
  // show an error
}