gpt4 book ai didi

ios - 为什么 UIButton 需要点击两次来改变它的图像

转载 作者:行者123 更新时间:2023-11-28 14:03:02 25 4
gpt4 key购买 nike

我是使用 Swift 4 开发 iOS 应用程序的新手。我使用下面的代码通过在 iOS 模拟器中运行它来更改 button2 的图像:

 @IBAction func button2(_ sender: Any) {
button2.setImage(UIImage(named: "wrong_answer"), for: .normal)
}

但是,button2 在我第一次单击它时没有更改其图像时突出显示。然后在第二次点击后,button2 中的图像已更改。

我的问题是为什么第一次点击后 button2 中的图像没有改变?

如何在第一次点击而不是两次点击后更改图像?这是Xcode的iOS模拟器的bug还是正常的?

最佳答案

您可能有一个与 UIButton 状态相关的问题导致了这个问题。我不认为这是一个模拟器错误。顺便说一句,您应该遵循的一个好习惯是将导出命名为不同于 @IBAction。比方说:

@IBAction func buttonTapped(_ sender: Any) {
button.setImage(UIImage(named: "image"), for: .normal)
}

试试这个:

override func viewDidLoad() {
super.viewDidLoad()
button.setImage(UIImage(named: "image"), for: .selected)
}

@IBAction func buttonTapped(_ sender: Any) {
button.isSelected = !button.isSelected
}

然后当您点击按钮时图像将自动更新。如果您想在第一次点击后保留图像,您可以将其更改为 button.isSelected = true

关于ios - 为什么 UIButton 需要点击两次来改变它的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53352159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com