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];

 
设置按钮说法,The added text will be in the middle of the setImage picture,相片在左面。,文本如次

  [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;

  Convert into integer

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

}

发表评论

Close Menu