gpt4 book ai didi

iphone - 从背景切换到前景时,UIButton currentimage 不返回图像?

转载 作者:搜寻专家 更新时间:2023-10-30 20:20:06 25 4
gpt4 key购买 nike

我正在检查按钮的图像以获取其状态,如下所示:

if([syncBtn.currentImage isEqual:[UIImage imageNamed:@"playbtn1.png"]])
{
//Do something if play button
}
else if([syncBtn.currentImage isEqual:[UIImage imageNamed:@"syncbtn1.png"]])
{
//Do something if sync button
}
else
{
//do something when no image on button
}

在 syncbtn1.png 或 playbtn1.png 按钮上总是有一个图像。

上面的检查工作正常,但是当我进入背景然后返回前景时,只有它无法通过上面的方法检查按钮的当前图像,它会进入其他状态。

有什么问题吗?

最佳答案

这是因为您正在比较 UIImage 实例。默认情况下它们被缓存,所以大多数时候你会得到相同的实例。但是应用进入后台后,缓存被清除,你得到一个新的实例,这意味着它不再匹配了。

修复它的两个选项..

使用您当前的方式:

  1. 只创建一次图像实例并将它们保存在 strong 属性中。
  2. 将这些图像分配给您的按钮并检查这些实例。

使用按钮状态:

  1. UIControlStateNormal设置playbtn1.png图像
  2. UIControlStateSelected设置syncbtn1.png图像
  3. 现在只需设置并检查 syncBtn.selected - 如果您更改所选标志,图像将自动更改。

关于iphone - 从背景切换到前景时,UIButton currentimage 不返回图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13955188/

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