UIButton州不会改变

时间:2012-08-18 22:20:54

标签: objective-c ios5 xcode4.3

在头文件中,我为UIButton声明了以下内容,其中包含状态为“normal”,“highlight”和“selected”的单独图像:

@property (nonatomic, weak) IBOutlet UIButton *checkbox;

-(IBAction)selectButton;

并将它们连接到xib中的按钮。实施如下:

- (IBAction)selectButton
{
    self.checkbox.selected=!self.checkbox.selected;
}

在运行期间,当用户触摸按钮时,它会转到“突出显示”的图像,但随后它会回到“正常”图像而不是更改为“选定”图像。我在代码的两侧NSLog(@"selected: %d",self.checkbox.selected添加了selectButton,我在前后都得到了0。我做错了什么,触摸按钮不会将状态更改为selected

2 个答案:

答案 0 :(得分:1)

以下是什么意思?

self.checkbox.selected=!self.checkbox.selected;

这是一个条件(总是错误的)。与if (1 != 1) {..}类似的东西。

您可能意味着以下其中一项:

self.checkbox.selected = YES;
self.checkbox.disabled = YES;
self.checkbox.highlighted = YES;

(或NO)。

答案 1 :(得分:1)

- (IBAction)selectButton
{


if (check.isSelected) {
    self.checkbox.selected=NO;
 }else
{
    self.checkbox.selected=YES;

}

}