码迷,mamicode.com
首页 > 其他好文 > 详细

UI-Day02--UIButton知识介绍(一)

时间:2015-09-01 13:56:13      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:

声明:此处所有代码都为在AppDelegate中操作的

UIButton

 

@implementation AppDelegate

{

    UILabel *_label;//创建一个label成员变量

}

 

 

 

//入口

1 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
2 
3     // Override point for customization after application launch.
4 
5     self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen] bounds]];
6 
7     self.window.backgroundColor = [UIColor whiteColor];

 

 

 UIButton 1

 

 1   //01.UIButton:UIContol:UIView,   UIbutton是UIContol的子类,间接式UIView的子类
 2 
 3     //02.UIBotton是 驱动型控件  可以点击响应事件
 4 
 5     //03.加方法创建button
 6 
 7     UIButton * button = [UIButton buttonWithType:UIButtonTypeInfoLight];
 8 
 9     //iOS7之后 UIButtonTypeRoundedRect无效
10 
11     //04.type 代表 button的样式
12 
13  
14 
15           //05.设置按钮背景颜色
16 
17     button.backgroundColor = [UIColor redColor];
18 
19           //06.直接使用frame对按钮的尺寸大小和位置进行设置
20 
21     button.frame = CGRectMake(0, 40, 320, 30);
22 
23     
24 
25     [self.window addSubview:button];
26 
27  
28 
29     
30 
31  

 

UIButton 2  按钮的自定义样式

 

  

 1  //开发中 基本不会使用系统提供的样式type 自定制控件
 2 
 3     UIButton * button2 = [UIButton buttonWithType:UIButtonTypeCustom];
 4 
 5     //01.UIButtonTypeCustom 自定义样式
 6 
 7  
 8 
 9     //02.开发中使用的图片绝大多数都是png格式,原因是因为图片可以是镂空的,可以做按钮图片
10 
11     UIImage *image = [UIImage imageNamed:@"1.png"];
12 
13     UIImage *bgImage = [UIImage imageNamed:@"map.png”];//背景图片
14 
15  
16 
17     //给button设置图片
18 
19     [button2 setImage:image forState:UIControlStateNormal];
20 
21     [button2 setBackgroundImage:bgImage forState:UIControlStateNormal];
22 
23  
24 
25     button2.frame = CGRectMake(0, 80, 320, 30);
26 
27  
28 
29     //设置点击后是否高亮,当点击整个按钮部分的时候,中间的前置图片会发亮一下
30 
31     button2.showsTouchWhenHighlighted = YES;//NO则是关闭高亮效果
32 
33     
34 
35     [self.window addSubview:button2];
36 
37     

 

 

 

 

UIButton 3   给按钮设置标题(标题的颜色),标签

 

  

 1  UIButton * button3 = [UIButton buttonWithType:UIButtonTypeCustom];//自定义type
 2 
 3     button3.frame = CGRectMake(0, 120, 320, 30);
 4 
 5  
 6 
 7     //01.设置标题
 8 
 9     [button3 setTitle:@"点点点" forState:UIControlStateNormal];
10 
11     [button3 setTitle:@"我被点击了" forState:UIControlStateHighlighted];
12 
13  
14 
15     //02.设置标题颜色
16 
17     [button3 setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
18 
19     [button3 setTitleColor:[UIColor grayColor] forState:UIControlStateHighlighted];
20 
21  
22 
23     //03.设置禁用状态 NO表示禁用 默认是YES; 即按钮的状态,NO时则点击不会有任何反应,YES的时候点击会做出相应的反应
24 
25     button3.enabled = YES;
26 
27  
28 
29     //04.设置标记    目的:通过标签快速找到该按钮,设置值不能是个位数
30 
31     button3.tag = 100;
32 
33     button3.backgroundColor = [UIColor greenColor];
34 
35     [self.window addSubview:button3];

 

    

 

UIButton 4   按钮点击后连接事件(即实现某个特定的方法)

 

  

 1  //添加事件(添加方法)(注册事件)
 2 
 3     UIButton * button4 = [UIButton buttonWithType:UIButtonTypeCustom];
 4 
 5     
 6 
 7     [button4 addTarget:self action:@selector(onClick:) forControlEvents:UIControlEventTouchDown];
 8 
 9     //01.UIControlEventTouchUpInside  最常用的一个方法,即按键按下去,松开的一瞬间,按钮的功能才会被触发
10 
11     //02.target - action 目标动作机制
12 
13     //03.给target对象发送action消息(让target调用action方法)
14 
15     //04.UIControlEventTouchUpInside  触发条件
16 
17     //05.只有满足ControlEvents条件,才会给target发送action消息
18 
19     //06.self代表的并不是button4 ,self代表的是appdelegate对象,如果target没有action的方法,点击按钮会崩溃
20 
21     button4.frame = CGRectMake(0, 180, 320, 30);
22 
23     button4.backgroundColor = [UIColor grayColor];
24 
25     [self.window addSubview:button4];
26 
27     
28 
29     [self.window makeKeyAndVisible];
30 
31     return YES;
32 
33 }

 

 

button的action中的方法

 1 -(void)onClick:(id)btn{//btn = button4
 2 
 3  
 4 
 5           //设置一个静态变量 i 来记录,按钮点击了多少次
 6 
 7     static int i = 0;
 8 
 9     if (!_label) {
10 
11         _label = [[UILabel alloc]initWithFrame:CGRectMake(100, 220, 100, 100)];
12 
13     }
14 
15     _label.text = [NSString stringWithFormat:@"我被点了%d次",i++];
16 
17     _label.backgroundColor = [UIColor blueColor];
18 
19     _label.adjustsFontSizeToFitWidth = YES;
20 
21     [self.window addSubview:_label];
22 
23     
24 
25     [btn setBackgroundColor:[UIColor redColor]];
26 
27 }

 

UI-Day02--UIButton知识介绍(一)

标签:

原文地址:http://www.cnblogs.com/IOS-BUDO/p/4775425.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!