iPhone - UIButton - 禁用状态下的背景图片

6

我有一个UIButton,我为它设置了三种状态的背景图片,分别是normal、highlighted和disabled,格式如下:

[button setBackgroundImage:buttonBGD forState:UIControlStateDisabled];

我的问题是,当按钮被禁用时,iPhone会自动为我亮度调整图片,这并不是我想要的效果。但是如果我告诉它:

[button setAdjustsImageWhenDisabled:NO];

然后图片根本没有改变。我该如何取消图像的自动变亮,而是使用我创建的原始图像?

3个回答

11

试试:

[button setBackgroundImage:buttonBGD forState:UIControlStateNormal | UIControlStateDisabled]
如果您希望在按钮被选中且处于禁用状态时显示相同的禁用图像,则需添加以下代码:

[button setBackgroundImage:buttonBGD forState:UIControlStateSelected | UIControlStateDisabled];

希望能对您有所帮助!


2
实际上,这些是苹果制定的限制,因此没有绕过的方法。但是您可以尝试使用自定义按钮,并在禁用状态下使用比所需更暗的图像,以便在变亮时符合您的要求。
希望这可以帮到您。

这就是我担心的事情,最终还是这么做了。谢谢。 - RyanJM
欢迎,RyanJM。我很高兴能帮助你。:] - Parth Bhatt

1

尝试在禁用时删除所选状态: [button setSelected:NO];


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接