作者:H_debug | 来源:互联网 | 2023-02-02 16:36
如果您创建UIButton
并为其提供图像,就像这样
UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
[button setImage:[UIImage imageNamed:@"share"] forState:UIControlStateNormal];
按钮的图像将按预期显示为浅色.
当你设置enabled
为NO
它时会自动着浅灰色:
问题是,如何在禁用按钮时更改应用的色调?我不想使用默认的浅灰色,而是应用不同的灰色.
我知道如果按钮有文本而不是图像,你可以改变禁用状态的文本颜色,[button setTitleColor:[UIColor darkGrayColor] forState:UIControlStateDisabled];
但由于没有标题,只有图像,我没有看到任何方法使用自定义色调颜色残疾人国家.
我也知道,如果你使用,UIButtonTypeCustom
你可以为不同的状态提供不同的图像,包括禁用.这个问题是按钮色调不应该在它应该变暗时,例如,当呈现警报时,它不是浅灰色,表示在警报被取消之前你不能与这个元素交互.状态之间也没有动画,例如突出显示时图像立即改变而不是系统按钮提供的漂亮的淡入淡出效果.这对我来说是不可接受的.