Swift 发件人色彩
Swift sender tint color
我正在开发一款井字游戏,其中每个方块都是自己的按钮,当点击方块时按钮的图像会发生变化。我通过将所有方形按钮连接到同一个 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()
}
当您将图像拖到视图控制器的代码中进行连接时,在单击之前"Ok"将发件人更改为 UIImage 而不是 AnyObject。
您需要禁用该按钮,这样下一个玩家就无法点击它。
sender.enabled = false
事实证明,将按钮类型从 'System' 更改为 'Custom' 会删除色调。希望对遇到同样问题的其他人有所帮助!
我正在开发一款井字游戏,其中每个方块都是自己的按钮,当点击方块时按钮的图像会发生变化。我通过将所有方形按钮连接到同一个 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()
}
当您将图像拖到视图控制器的代码中进行连接时,在单击之前"Ok"将发件人更改为 UIImage 而不是 AnyObject。
您需要禁用该按钮,这样下一个玩家就无法点击它。
sender.enabled = false
事实证明,将按钮类型从 'System' 更改为 'Custom' 会删除色调。希望对遇到同样问题的其他人有所帮助!