CheckBox Button

#import <Foundation/Foundation.h>

@interface CheckButton : UIButton {

BOOL _checked;

}

@property (nonatomic, setter=setChecked) BOOL checked;

-(void) setChecked:(BOOL) check;

@end

#import "CheckButton.h"

@implementation CheckButton

@synthesize checked = _checked;

-(id) init

{

if( self=[super init] )

{

self.checked = NO;

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

}

return self;

}

-(void) awakeFromNib

{

self.checked = NO;

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

}

-(void) dealloc

{

[super dealloc];

}

-(void) setChecked:(BOOL) check 

{

_checked = check;

if( _checked )

{

UIImage* img = [UIImage imageNamed:@"check.png"];

[self setImage:img forState:UIControlStateNormal];

}

else

{

UIImage* img = [UIImage imageNamed:@"uncheck.png"];

[self setImage:img forState:UIControlStateNormal];

}

}

-(void) OnCheck:(id) sender

{

self.checked = !_checked;

}

@end

原文地址:https://www.cnblogs.com/javawebsoa/p/2458493.html