我四处张望时会高亮显示一个按钮,于是我想到了这一点。
//The button #1
-(IBAction)Number1:(UIButton *)sender{
[self buttonPressed:sender];
[self appendDigit:@"1"];
}
//The function for buttonPressed
- (void) buttonPressed:(UIButton *)sender {
[sender setBackgroundImage:[UIImage imageNamed:@"ButtonPressed.png"] forState:(UIControlStateHighlighted)];
}
它仅在第二次按下后才突出显示我想要的按钮。不知道为什么要这样做,但是确实是。.所以,我想知道我在这里想念什么吗?
我看过其他文章,以不同的方式来解决这个问题,但我喜欢我实现计算器的方式有点不同。
好吧,我希望你们能向正确的方向伸出援手或指导。
最佳答案
原因是这行代码
[sender setBackgroundImage:[UIImage imageNamed:@"ButtonPressed.png"] forState:(UIControlStateHighlighted)];
第一次点击时尚未处理。
您将必须使该按钮的IBOutlet像
@property (weak, nonatomic) IBOutlet UIButton *button;
然后在中查看DidLoad
[self.button setBackgroundImage:[UIImage imageNamed:@"ButtonPressed.png"] forState:(UIControlStateHighlighted)];
GitHub上的示例项目:
https://github.com/voyage11/HighLightBtn
关于ios - 按下时突出显示的UIButton不会在第一次按下时突出显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23693235/