gpt4 book ai didi

objective-c - 更改 UIButton 背景颜色

转载 作者:太空狗 更新时间:2023-10-30 03:35:23 33 4
gpt4 key购买 nike

我正在以编程方式创建按钮。我想在再次触摸内部时更改按钮背景颜色,它必须在抬起手指后设置回其通常的颜色......

nine = [UIButton buttonWithType:UIButtonTypeCustom];
[nine setFrame:CGRectMake(15, 105, 65, 40)];
[nine setTitle:@"9" forState:UIControlStateNormal];
[nine setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
[nine setBackgroundColor:[UIColor cyanColor]];
[nine addTarget:self action:@selector(clickDigit:) forControlEvents:UIControlEventTouchUpInside];
[nine addTarget:self action:@selector(changeButtonBackGroundColor:) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:nine];

//改变背景颜色

-(void)changeButtonBackGroundColor:(id) sender
{
[nine setBackgroundColor:[UIColor redColor]];
}

此处创建了 changeBackgroundColor 方法来更改该按钮的颜色。它会改变颜色。

最佳答案

不知道这是否与您的问题有关,但是:这个

[nine setBackgroundColor:[UIColor redColor]];

应该是

[sender setBackgroundColor:[UIColor redColor]];

编辑:改变这个

[nine addTarget:self action:@selector(changeButtonBackGroundColor:) forControlEvents:UIControlEventTouchUpInside];

[nine addTarget:self action:@selector(changeButtonBackGroundColor:) forControlEvents:UIControlEventTouchDown];
[nine addTarget:self action:@selector(resetButtonBackGroundColor:) forControlEvents:UIControlEventTouchUpInside];
[nine addTarget:self action:@selector(resetButtonBackGroundColor:) forControlEvents:UIControlEventTouchUpOutside];
[nine addTarget:self action:@selector(resetButtonBackGroundColor:) forControlEvents:UIControlEventTouchCancel];

并添加方法:

- (void)resetButtonBackGroundColor: (UIButton*)sender {
[sender setBackgroundColor:[UIColor cyanColor]];
}

关于objective-c - 更改 UIButton 背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9737503/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com