Swift发送者色彩

时间:2016-03-03 18:33:55

标签: xcode swift sender tint

我正在进行一个tic tac toe游戏,其中每个方块都是它自己的按钮,当点击方形时按钮的图像会发生变化。我通过将所有方形按钮连接到同一个IBAction @IBAction func buttonPressed(sender: AnyObject)并使用sender.setImage()来更改图像来完成此操作。问题是,图像都是蓝色的。我可以通过改变全局色调颜色将此蓝色更改为不同的颜色,但我真正想要的是O和X图像是不同的颜色。 sender.tintColor会抛出错误,button.tintColor就像我在下面的代码中所做的那样,每次点击一个正方形时,只会来回更改一个图像的颜色。我已经尝试在文件检查器中将全局色调设置为无颜色,但它只是回到默认的蓝色。有什么想法吗?

if activePlayer == 1 {

    sender.setImage(UIImage(named: "o-img"), forState: .Normal)

    activePlayer = 2

    button.tintColor = UIColor.blackColor()

} else {

    sender.setImage(UIImage(named: "x-img"), forState: .Normal)

    activePlayer = 1

    button.tintColor = UIColor.whiteColor()

}

3 个答案:

答案 0 :(得分:0)

当您将图像拖动到视图控制器的代码进行连接时,在单击“确定”之前将发件人更改为UIImage而不是AnyObject。

答案 1 :(得分:0)

你需要禁用该按钮,以便下一位玩家无法点击它。

sender.enabled = false

答案 2 :(得分:0)

事实证明,更改系统'系统'到' Custom'去除色彩。希望能帮助遇到同样问题的其他人!