OStack程序员社区-中国程序员成长平台

标题: objective-c - 如何以编程方式更改 Button 状态? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 00:05
标题: objective-c - 如何以编程方式更改 Button 状态?

.selected.highlighted 属性不会删除它,因为出于某种原因,按钮看起来更加灰暗(未突出显示的图像的阴影更深) 当突出显示并被选中时设置为 YES。

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



Best Answer-推荐答案


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

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

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

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

然而

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

button.adjustsImageWhenHighlighted = FALSE;

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

UIImage *image = [UIImage imageNamed"img"];
[button setImage:image forState:UIControlStateNormal];
[button setImage:image forState:UIControlStateHighlighted];

关于objective-c - 如何以编程方式更改 Button 状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14012942/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4