UIButton类型属性简单归纳以及自定义按钮的设置_空忆己

(1)UIButton类经遗传获得自UIControl,和uicontrol经遗传获得UIView,因UIView是每一矩形区域,到这程度,UIButton状况化的目标在世界上是每一矩形,尽管如此有各种各样的圆角。、增大联络、通讯按钮等,向它们添加镶嵌,环境矩形。,而且它们具有有构架的属性。,这是设置职位和矩形的职位。。

(2)UIButton使被安排好每一按钮,用不着状况化,这归咎于alloc和init,相反,少量地直地内置的厂子办法被直地使转移。,这和UILabel
*label1=[[UILabel
alloc init ]清楚的],又这些类型中最经用的自清晰度类型,因人们可以定做图片,图片和剧本、广播稿或者电影剧本的职位。

(4)按钮的最重要的东西归咎于下面设置的属性。,不过按钮关系的巧妙地把持是什么?即点击后产生什么,这需求每一addtarget巧妙地把持功用,免得多个按钮用于相等的数量的功用,您需求象征属性来区别哪个按钮是。

(5)自清晰度按钮,办法经过是自清晰度每一类,经遗传获得了UIButton的居于首位地,与重写异样类的应变量,它相当于定做。,最不可能的,运用异样类使被安排好每一按钮,这些按钮也就具有自清晰度的用刻刀作装饰画(这种办法只瞄准自清晰度按钮类型奈何)。

– (void)viewDidLoad {

 
建造BTN1目标,用不着alloc和init,而归咎于运用内置的厂子办法,有数量庞大的数量庞大的CMD 点击检查

  UIButton *btn1=[UIButton
buttonWithType:UIButtonTypeRoundedRect];

  设置职位和宽度

  (30, 30, 300,
30);

 
设置按钮的主题,环境有好几种经用的时Normal和Highlighted(点击时环境),单击 检查

  [btn1 settitle:点我。!”
forState:UIControlStateNormal];

  单击时设置主题

  [btn1 settitle:@我奉命!”
forState:UIControlStateHighlighted];

  设置主题色

  [btn1 setTitleColor:[UIColor greenColor]
forState:UIControlStateNormal];

  [btn1 setTitleColor:[UIColor yellowColor]
forState:UIControlStateHighlighted];

  单击时设置按钮的镶嵌色,呃,完整奈何,那是没奈何果的

  [btn1 setTintColor:[UIColor
purpleColor]];

  点击按钮灯,这结果却按钮腰部的每一光。,这奈何果

  btn1.showsTouchWhenHighlighted=YES;

  设置用垂饰安装用垂饰安装,结果却象征用,可以用来区别哪个按钮支配权是

 

  //设置镶嵌色

  [UIColor
redColor];

 
如今这种办法在iOS的高版本中是不受约束的的。,因人们找到,当镶嵌未设置时,拐角按钮不注意边框。,到这程度,在它下面使被安排好有构架的并归咎于很权。

  设置镶嵌或图片,镶嵌是矩形。,那好的说言不由衷的话呢?坑爹!

 
因而如今恶劣的的开发利用uibuttontypecustom,而归咎于UIButtonTypeRoundedRect

  最重要的添加引发其余的事变的一件事事变用户交替地

  本人指的是使转移目标的办法。

 
BtnClick:是使转移办法,BtnClick和btnclick:是清楚的的,后者表现有限制因素。

 
//UIControlEventTouchUpInsIDE是每一触发器事变。,有很多,可以是CMD 点击检查

 
这边有三个限制因素可以恣意革新。,像,一类新的HI,在类(空)使知晓中清晰度办法

 
与在异样提供纸张中引入头提供纸张。,状况化每一目标1这边,与你可以用1替代自,使知晓btnclick与革新

  这打算在1目标使知晓的办法是点击后

  [btn1 addTarget:self
举动:@发现者(btnclick
forControlEvents:UIControlEventTouchUpInsIDE ]

  再加每一按钮

  UIButton *btn2=[UIButton
buttonWithType:UIButtonTypeContactAdd];

  (30, 80, 300,
30);

 
异样添加的联络按钮在世界上是每一矩形。,和下面的平均,都是经遗传获得自UIControl,后者是由UIView,因而它是椭圆体的的

  平坦的按钮非常大,只单击完全矩形相当于单击按钮。

  [UIColor
greenColor];

  //设置用垂饰安装

 

 
//增大事变:用异样的办法叫BTN1,但问题是,人们需求区别按钮,免得人们需求区别,你需求运用用垂饰安装,经过把持限制因素的btnclick

  [btn2 addTarget:self
举动:@发现者(btnclick
forControlEvents:UIControlEventTouchUpInsIDE ]

  添加每一最经用的自清晰度按钮,其余的按钮尝试本身

  UIButton *btn3=[UIButton
buttonWithType:UIButtonTypeCustom];

  (30 , 150 , 300,
90);

  [UIColor
redColor];

 

  [btn3 addTarget:self
举动:@发现者(btnclick
forControlEvents:UIControlEventTouchUpInsIDE ]

  设置图片镶嵌是昏暗的的点击(但没奈何果)

  btn3.adjustsImageWhenHighlighted=YES;

  //因而,添加图片的一种办法是添加镶嵌图片。,这张相片,免得小了,就会被膨胀并丰富完全镶嵌

  [btn3 setBackgroundImage:[UIImage
imageNamed:@””] forState:UIControlStateNormal];

 
同样除此之外一种增大图片的办法,它在按钮上而归咎于镶嵌上。,这归咎于膨胀图片的办法。,它就在腰部

  [btn3 setImage:[UIImage
imageNamed:@””] forState:UIControlStateNormal];

 
设置按钮主题,添加的主题将在西雅图图片腰部,相片在左面。,机身如次

  [btn3 settitle:@自清晰度按钮
forState:UIControlStateNormal];

 
//免得需求重行排异样图片和按钮剧本、广播稿或者电影剧本的职位,你需求在UIButton类重写功用,Click UIButton预告

  //-
(CGRect)titleRectForContentRect:(CGRect)contentRect;剧本、广播稿或者电影剧本相对于按钮的职位

  //-
(CGRect)imageRectForContentRect:(CGRect)contentRect;图片相对于按钮的职位

 
//居于首位地步:你可以清晰度每一UIButton类称为色,在m中重写以下应变量

  //-
(CGRect)titleRectForContentRect:(CGRect)contentRect{

  // return CGRectMake(50, 25, 100,
40);

  //}

  //-
(CGRect)imageRectForContentRect:(CGRect)contentRect{

  // return CGRectMake(150, 25, 40,
40);

  //}

 
瞬间手续,在异样提供纸张中引入头提供纸张,与状况化BTN3,用色,而归咎于为了的UIButton

 
我的译文:相当于每一小的定做每一土生动物UIButton,到这程度,目标的前状况也具有自清晰度胜利。

  这种办法只一致的uibuttontypecustom,其余的奈何

  显示三个按钮

  [self.view addSubview:btn1];

  [self.view addSubview:btn2];

  [self.view addSubview:btn3];

  [过分的 viewDidLoad];

  // Do any additional setup after loading
the view, typically from a 笔尖.

}

添加每一限制因素,这是从原-(void)btnclick { }如次

因人们认识这边都是按钮目标,到这程度可以用(UIButton *)sender,但通常人们运用货币有指导意义的事物id。

(void)btnclick:(ID)发送

  将发送信号的把持限制因素替换为按钮

  UIButton *btn=(UIButton *)sender;

  替换成积分

  NSLog(@”OMG,it is %i”,(int)

}

发表评论

Close Menu