Loading

IOS:个人笔记|UI__UIButton

自己在网上找的比较老的教学视频,没找到16年之后新的培训资料。随手记录一些知识点,不定时进行补充。

按钮的状态

Normal 普通状态
默认情况 default
对应的枚举值 :UIControlStateNormal

Highlighted 高亮状态
按钮按下去的时候,手指未松开
对应的枚举值 :UIControlStateHighLighted

Disabled 失效状态
如果enable==no,即代表按钮不可用
对应的枚举值:UIControlStateDisabled
余下两种状态
Focused
Selected
===
button在UI界面的一些琐碎的知识点
type如果是custom,就需要自已重新去设置。
detail disclosure,info light,info dark,button变成一个感叹号图标状,高宽固定
add contact 变成一个+号的图标状
设置button上字体的阴影,是分按钮状态的
按钮如果在image里添加一个图片,按钮会变成custom自定义,按钮大小也会随图片大小变化,在background不会。一个是内容图,一个是背景图.

 1 //button的常见的设置
 2     /*创建button并且在创建时选择类型(只能在初始化时设置类型,一般选择自定义custom)
 3      如果先allocinit创建,再选择buttontype设置类型会失败。因为buttontype是只读类型
 4     */
 5      UIButton *btn1=[UIButton buttonWithType:UIButtonTypeCustom];
 6     //设置frame
 7     btn1.frame=CGRectMake(20203030);
 8     //设置背景色
 9     btn1.backgroundColor=[UIColor redColor];
10     //设置文字(分状态)
11     [btn1 setTitle: @"按钮普通状态" forState:UIControlStateNormal];
12     [btn1 setTitle:@"按钮高亮状态" forState:UIControlStateHighlighted];
13     //设置文字颜色,同样分状态
14     [btn1 setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
15     [btn1  setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];
16     //设置文字阴影,同样分状态
17     [btn1 setTitleShadowColor:[UIColor yellowColor] forState:UIControlStateNormal];
18     [btn1 setTitleShadowColor:[UIColor grayColor] forState:UIControlStateHighlighted];
19     //阴影偏移量,不分状态
20     btn1.titleLabel.shadowOffset=CGSizeMake(33);
21     //设置内容图片,分状态(代码界面设置内容图片,图片如果过大,按钮不会被撑大)
22     [btn1 setImage:[UIImage imageNamed:@"01.png"] forState:UIControlStateNormal];
23     //设置内容图片的背景颜色
24     btn1.imageView.backgroundColor=[UIColor redColor];
25     //设置背景图片
26     [btn1 setBackgroundImage:[UIImage imageNamed:@"02.png"] forState:UIControlStateNormal];
27     /*按钮的监听事件
28      addTarget:谁来做
29      action:要做的事情
30      forControlEvent:触发的事件
31      */
32     [btn1  addTarget:self action:@selector(btn1Click) forControlEvents:UIControlEventTouchUpInside];

关于多个按钮共用一个点击事件,一般是通过按钮的tag属性实现,通过tag去区分每个按钮。简单的示例,代码没写完整

 1 -(void)set{
 2 UIButton *btn1=[[UIButton alloc]init];
 3     [btn1  addTarget:self action:@selector(btn1Click:) forControlEvents:UIControlEventTouchUpInside];
 4     UIButton *btn2=[[UIButton alloc]init];
 5     [btn2  addTarget:self action:@selector(btn1Click:) forControlEvents:UIControlEventTouchUpInside];
 6     UIButton *btn3=[[UIButton alloc ]init];
 7     [btn3  addTarget:self action:@selector(btn1Click:) forControlEvents:UIControlEventTouchUpInside];
 8     [btn1 setTag:1];
 9     [btn2 setTag:2];
10     [btn3 setTag:3];}
11 -(void)btn1Click:(UIButton *)Button{
12     if(Button.tag==1)
13         NSLog(@"按钮1");
14     else if(Button.tag==2)
15         NSLog(@"");
16     else
17         NSLog(@"");
18 }

 

posted @ 2020-09-14 11:50  DDD-SagerKing  阅读(149)  评论(0编辑  收藏  举报