2

和属性不会削减它,因为由于某种原因,当突出显示和选择设置为 YES 时,按钮看起来更灰(未突出显示的图像的阴影更暗).selected.highlighted

我需要让我的按钮熄灭,就像用户让它熄灭一样。
我怎么做?

4

2 回答 2

4

我现在想我明白你的意思了。我在我的 UIButton 中放置了一个图像,并尝试在触摸时更改按钮的状态。

- (IBAction)touchDown:(id)sender {
    [(UIButton *)sender setHighlighted:FALSE];
    [(UIButton *)sender setSelected:FALSE];
}

我注意到在您移动手指之前图像不会变暗。如果您将一个动作连接到“触摸内部拖动”并检查.highlighted您应该看到它再次变为 TRUE。您可以将其设置回 FALSE:

- (IBAction)touchMove:(id)sender 
{ 
    [(UIButton *)sender setSelected:FALSE];
}

然而

如果您只是想在用户按下图像时阻止图像变灰,请执行以下操作:

button.adjustsImageWhenHighlighted = FALSE;

设置图像UIControlStateHighlighted也会消除灰色。

UIImage *image = [UIImage imageNamed:@"img"];
[button setImage:image forState:UIControlStateNormal];
[button setImage:image forState:UIControlStateHighlighted];
于 2012-12-23T22:14:05.930 回答
0

如果“关闭”是指要禁用该按钮,则可以使用:

[myButton setEnabled:NO];
于 2012-12-23T17:18:04.850 回答