button控件的一些开发中常用技巧

来源:互联网 发布:用淘宝助理复制宝贝 编辑:程序博客网 时间:2024/04/30 22:40

实例化一个按钮

  1. UIButton *Btn = [[UIButton alloc] init];


  1. // 设置位置与大小,按设计原则转为变量        
  2. CGFloat BtnX = 12;        
  3. CGFloat BtnY = 30;        
  4. CGFloat BtnW = 40;        
  5. CGFloat BtnH = 40;        
  6. Btn.frame = CGRectMake(BtnX, BtnY, BtnW, BtnH);

设计一个按钮通常需要注意两种状态

1.normal(即未点击)

2.Highlighted(高亮)

一般情况下高亮自动继承未点击时的设置,我们在开发的时候,常需要在两种状态的时候替换图片达到点击时的视觉效果;

  1. // 设置默认的背景
  2. UIImage *normalImage = [UIImage imageNamed:@"buttongreen"];
  3. [Btn setBackgroundImage:normalImage forState:UIControlStateNormal];
  4. // 设置高亮的背景
  5. UIImage *highImage = [UIImage imageNamed:@"buttongreen_highlighted"];
  6. [Btn setBackgroundImage:highImage forState:UIControlStateHighlighted];

然后是添加文字与修改字体,这里有个陷阱

  1. @property(nullable, nonatomic,readonly,strong) UILabel     *titleLabel NS_AVAILABLE_IOS(3_0);
  2. @property(nullable, nonatomic,readonly,strong) UIImageView *imageView  NS_AVAILABLE_IOS(3_0);

官方文档中的关于button之所以能同时显示图片和文字的解释,

  1. //不推荐直接获取按钮label来设置文字,因为它没有状态,可能会出现难以预料的现象
  2. Btn.titleLabel.text = @"";
  3. //设置按钮的文字推荐使用
  4. [Btn setTitle:@"下载" forState:UIControlStateNormal];

然后就是设置字体

  1. downloadBtn.titleLabel.font = [UIFont systemFontOfSize:14];

然后根据情况加载至任意父view中

  1. [xView addSubview:Btn];



0 0
原创粉丝点击