我正在实现 UIButton 的复选框子类。有 2 个背景图像(开/关)和 4 个概念状态:
on
- 在图像上/未突出显示off
- 关闭图像/未突出显示on & pressed
- 在图像上/突出显示off & pressed
- 关闭图像/突出显示
如果我将背景图像设置为仅打开和关闭(UIControlStateNormal
和UIControlStateSelected
),则按钮在按住时会突出显示。
但是,当 时on & pressed
,它使用关闭图像(正如预期的那样,因为状态是UIControlStateSelected | UIControlStateHighlighted
,所以它使用正常状态图像)
因此,我将背景图像设置为UIControlStateSelected | UIControlStateHighlighted
打开图像,但现在禁用了编程突出显示 - 我假设因为如果您为该状态设置特定的背景图像,逻辑是您可能想要覆盖突出显示。
我不想使用第三张图片,是否可以设置背景图片UIControlStateSelected | UIControlStateHighlighted
并仍然应用程序化突出显示?
[self setAdjustsImageWhenHighlighted:YES];
设置背景图像后我已经打电话了。