禁用UIButton进行交互而不更改UIButton外观(即灰色外观)

时间:2014-04-12 22:30:54

标签: ios uibutton

我有以下代码,我的目标是在UIButton模式下禁用互动selected

if (...){
    cell.requestButton.selected = YES;
    cell.requestButton.enabled = NO;
} else {
    cell.requestButton.selected = NO;
    cell.requestButton.enabled = YES;
}

禁用UIButton的副作用是它也会改变Button的外观。即使我为按钮的UIImageselected状态设置了相同的disabled,外观仍然会显示为< 1 alpha级别的灰色外观。有没有办法可以阻止disabled状态改变UIButton的外观?

谢谢!

2 个答案:

答案 0 :(得分:3)

尝试设置UIView的userInteractionEnabled属性。不确定这是否有效,但试一试。 如果这不起作用,你可以在它上面放置一个虚拟UIView,添加约束以使用原始按钮的位置和大小,并启用它以便吞下任何水龙头。

答案 1 :(得分:1)

UIControlStateNormal的样式设置为UIControlStateDisabled,或者查看adjustsImageWhenDisabled