我编写了一些代码,根据选择的按钮切换 2 个按钮。如果选择了英国,则它会打勾,而 BR 则不打勾,反之亦然。然而,这似乎只是英国按钮的情况。如果我选择 BR 按钮而不是 UK 按钮取消勾选,则 BR 按钮会短暂勾选,但随后会再次取消勾选。
我已经正确地连接了我的按钮(我已经检查了三次),并且当 BR 按钮短暂滴答时,它肯定是连接起来的。我正在使用的代码如下:
。H
@property (weak) IBOutlet UIButton *btUK;
@property (weak) IBOutlet UIButton *btBR;
.m
- (IBAction)changePortal:(id)sender
{
UIButton *button = (UIButton *)sender;
if (button.tag == kUKButton)
{
self.btUK.imageView.image = [UIImage imageNamed:@"tick_box.png"];
self.btBR.imageView.image = [UIImage imageNamed:@"tick_box_empty.png"];
[Singleton sharedSingleton].bUseUKPortal = YES;
}
else if (button.tag == kBRButton)
{
self.btBR.imageView.image = [UIImage imageNamed:@"tick_box.png"];
self.btUK.imageView.image = [UIImage imageNamed:@"tick_box_empty.png"];
[Singleton sharedSingleton].bUseUKPortal = NO;
}
}
我在代码中设置了断点,并确认两个按钮在单击时都进入了它们的相关部分。我还可以确认没有其他代码正在使用 btUK 和 btBR 变量,因为我刚刚编写了所有代码。
两个按钮都将 changePortal 设置为它们的操作,并且该函数每次单击仅调用一次。
我也尝试过清理代码,但这并没有解决我的问题。
如果有人能解释为什么会发生这种情况,我将不胜感激。