html5中文学习网

您的位置: 首页 > ios » 正文

IOS开发自定义CheckBox控件_IOS开发

[ ] 已经帮助:人解决问题

  IOS本身没有系统的CheckBox组件,但是实际开发中会经常用到,所以专门写了一个CheckBox控件,直接上代码BWwHTML5中文学习网 - HTML5先行者学习网

  效果图:BWwHTML5中文学习网 - HTML5先行者学习网

IOS开发自定义CheckBox控件 三联

  UICheckBoxButton.h文件如下:BWwHTML5中文学习网 - HTML5先行者学习网

  #import BWwHTML5中文学习网 - HTML5先行者学习网

  #import "Common.h"BWwHTML5中文学习网 - HTML5先行者学习网

  @interface UICheckBoxButton : UIControlBWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  UILabel *label;BWwHTML5中文学习网 - HTML5先行者学习网

  UIImageView *icon;BWwHTML5中文学习网 - HTML5先行者学习网

  BOOL checked;BWwHTML5中文学习网 - HTML5先行者学习网

  id delegate;BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  @property (retain, nonatomic) id delegate;BWwHTML5中文学习网 - HTML5先行者学习网

  @property (retain, nonatomic) UILabel *label;BWwHTML5中文学习网 - HTML5先行者学习网

  @property (retain, nonatomic) UIImageView *icon;BWwHTML5中文学习网 - HTML5先行者学习网

  -(BOOL)isChecked;BWwHTML5中文学习网 - HTML5先行者学习网

  -(void)setChecked: (BOOL)flag;BWwHTML5中文学习网 - HTML5先行者学习网

  @endBWwHTML5中文学习网 - HTML5先行者学习网

  UICheckBoxButton.m文件如下:BWwHTML5中文学习网 - HTML5先行者学习网

  #import "UICheckBoxButton.h"BWwHTML5中文学习网 - HTML5先行者学习网

  @implementation UICheckBoxButtonBWwHTML5中文学习网 - HTML5先行者学习网

  @synthesize label,icon,delegate;BWwHTML5中文学习网 - HTML5先行者学习网

  - (id)initWithFrame:(CGRect)frame {BWwHTML5中文学习网 - HTML5先行者学习网

  if ( self = [super initWithFrame: frame])BWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  icon =[[UIImageView alloc] initWithFrame: CGRectMake (0, 0, frame.size.height, frame.size.height)];BWwHTML5中文学习网 - HTML5先行者学习网

  [self setChecked:NO];BWwHTML5中文学习网 - HTML5先行者学习网

  [self addSubview: icon];BWwHTML5中文学习网 - HTML5先行者学习网

  label =[[UILabel alloc] initWithFrame: CGRectMake(icon.frame.size.width + 7, 0,BWwHTML5中文学习网 - HTML5先行者学习网

  frame.size.width - icon.frame.size.width - 10,BWwHTML5中文学习网 - HTML5先行者学习网

  frame.size.height)];BWwHTML5中文学习网 - HTML5先行者学习网

  label.backgroundColor =[UIColor clearColor];BWwHTML5中文学习网 - HTML5先行者学习网

  label.textAlignment = UITextAlignmentLeft;BWwHTML5中文学习网 - HTML5先行者学习网

  [self addSubview:label];BWwHTML5中文学习网 - HTML5先行者学习网

  [self addTarget:self action:@selector(clicked) forControlEvents: UIControlEventTouchUpInside];BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  return self;BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  -(BOOL)isChecked {BWwHTML5中文学习网 - HTML5先行者学习网

  return checked;BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  -(void)setChecked: (BOOL)flag {BWwHTML5中文学习网 - HTML5先行者学习网

  if (flag != checked)BWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  checked = flag;BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  if (checked)BWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  [icon setImage: [UIImage imageNamed:@"checkBoxSelect.png"]];BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  elseBWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  [icon setImage: [UIImage imageNamed:@"checkBoxNoSelect.png"]];BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  -(void)clicked {BWwHTML5中文学习网 - HTML5先行者学习网

  [self setChecked: !checked];BWwHTML5中文学习网 - HTML5先行者学习网

  if (delegate != nil)BWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  SEL sel = NSSelectorFromString (@"checkButtonClicked");BWwHTML5中文学习网 - HTML5先行者学习网

  if ([delegate respondsToSelector: sel])BWwHTML5中文学习网 - HTML5先行者学习网

  {BWwHTML5中文学习网 - HTML5先行者学习网

  [delegate performSelector: sel];BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  -(void)dealloc {BWwHTML5中文学习网 - HTML5先行者学习网

  delegate = nil;BWwHTML5中文学习网 - HTML5先行者学习网

  [label release];BWwHTML5中文学习网 - HTML5先行者学习网

  [icon release];BWwHTML5中文学习网 - HTML5先行者学习网

  [super dealloc];BWwHTML5中文学习网 - HTML5先行者学习网

  }BWwHTML5中文学习网 - HTML5先行者学习网

  @endBWwHTML5中文学习网 - HTML5先行者学习网

  使用方法:BWwHTML5中文学习网 - HTML5先行者学习网

  UICheckBoxButton *checkBoxButton = [[ UICheckBoxButton alloc] initWithFrame: CGRectMake(30, 50, 220, 25)];BWwHTML5中文学习网 - HTML5先行者学习网

  checkBoxButton.delegate = self.delegate;BWwHTML5中文学习网 - HTML5先行者学习网

  checkBoxButton.label.text = [Common getTextByTag:@"noCostPrompt"];BWwHTML5中文学习网 - HTML5先行者学习网

  checkBoxButton.label.textColor = [Common getColorByTag:@"alertLabelcolor"];BWwHTML5中文学习网 - HTML5先行者学习网

  [self.view addSubview:checkBoxButton];BWwHTML5中文学习网 - HTML5先行者学习网

  [checkBoxButton release];BWwHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助