分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
我们先实现单个按钮,为了复用,不管单选还是复选按钮都是使用同一个类来实现,为了区别单选还是复选,我们用一个自定义枚举类型CheckButtonStyle属性style来区别,当其值设置为CheckButtonStyleDefault或CheckButtonStyleBox时,为复选按钮:
当其值设为CheckButtonStyleRadio时,为单选按钮:
当按钮在选中/反选状态间切换时,文字左边的图片自动转换。
整个控件是由一个ImageView、一个Label、一个BOOL变量及其他变量组成,.h文件如下:
typedef enum {
CheckButtonStyleDefault = 0,
CheckButtonStyleBox = 1,
CheckButtonStyleRadio = 2
} CheckButtonStyle;
#import <Foundation/Foundation.h>
@interface CheckButton :UIControl {
//UIControl*control;
UILabel* label;
UIImageView* icon;
BOOL checked;
id value,delegate;
CheckButtonStyle style;
NSString *checkname,*uncheckname;//勾选/反选时的图片文件名
}
@property (retain,nonatomic)id value,delegate;
@property (retain,nonatomic)UILabel* label;
@property (retain,nonatomic)UIImageView* icon;
@property (assign)CheckButtonStyle style;
-(CheckButtonStyle)style;
-(void)setStyle:(CheckButtonStyle)st;
-(BOOL)isChecked;
-(void)setChecked:(BOOL)b;
@end
具体实现如下:
#import "CheckButton.h"
@implementation CheckButton
@synthesize label,icon,value,delegate;
-(id)initWithFrame:(CGRect)frame
{
if (self=[super initWithFrame:frame]) {