IOS项目笔记——按钮属性和代码添加
2013-09-14 15:07
513 查看
学IOS不就,但是很荣欣的是很快就找到可工作,但是在工作中,会遇到很多不同的需求,在这里我也将做这个项目中遇到的问题在这里做一个梳理
在项目中很多时候直接拉空间来实现页面是不现实的,所以很多时候都是要 用代码动态添加
1、动态添加元素
(1)、添加一个按钮 和 按钮属性介绍
首先要知道按钮的集中风格:
按钮还有很多其他的属性 比如:
默认情况下,当按钮高亮的情况下,图像的颜色会被画深一点,如果这下面的这个属性设置为no,那么可以去掉这个功能
默认情况下,当按钮禁用的时候,图像会被画得深一点,设置NO可以取消设置
下面的这个属性设置为yes的状态下,按钮按下会发光*/
当然在定义按钮的时候,可以直接开辟空间来定义按钮,这个时候,按钮是默认
在我们自定义风格按钮的时候,如果我们只有一张方形图,但是我们在代码中要实现按钮有一定的圆角,这个也是可以实现的,
需要注意的是:我们需要用到一个包
QuartzCore 在需要实现圆角自定义按钮的时候,需要先导入QuartzCore 这个包,然后在文件之前,声明
#import <QuartzCore/QuartzCore.h>
然后在按钮定义里面实现以下代码就可以了
在项目中很多时候直接拉空间来实现页面是不现实的,所以很多时候都是要 用代码动态添加
1、动态添加元素
(1)、添加一个按钮 和 按钮属性介绍
首先要知道按钮的集中风格:
//typedef enum {
06 | UIButtonTypeCustom = 0, 自定义风格 |
07 | UIButtonTypeRoundedRect, 圆角矩形 |
08 | UIButtonTypeDetailDisclosure,蓝色小箭头按钮,主要做详细说明用 |
09 | UIButtonTypeInfoLight, 亮色感叹号 |
10 | UIButtonTypeInfoDark,暗色感叹号 |
11 | UIButtonTypeContactAdd, 十字加号按钮 |
12 | } UIButtonType; |
/* forState: 这个参数的作用是定义按钮的文字或图片在何种状态下才会显现*/
1 | //以下是几种状态 |
2 | //enum { |
3 | //UIControlStateNormal = 0, 常规状态显现 |
4 | //UIControlStateHighlighted = 1 << 0,高亮状态显现 |
5 | //UIControlStateDisabled = 1 << 1,禁用的状态才会显现 |
6 | //UIControlStateSelected = 1 << 2,选中状态 |
7 | //UIControlStateApplication = 0x00FF0000, 当应用程序标志时 |
8 | //UIControlStateReserved = 0xFF000000 为内部框架预留,可以不管他 |
9 | //}; |
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[btn setTitle:@"点击" forState:UIControlStateNormal]; //正常状态下按钮显示的字
[btn setTitle:@"点击了" forState:UIControlStateHighlighted]; //按钮点击时显示的字
btn.enabled = false; //设置按钮是否可用
[btn setTitle:@"禁用状态" forState:UIControlStateDisabled];//按钮不可用的时候,显示的字
//[btn setTitle:@"未知" forState:UIControlStateSelected]; //还没够明白
CGRect rect = CGRectMake(100, 100, 100, 40);
btn.frame = rect;//或者是 btn.frame = CGRectMake(200, 100, 100, 40);
[self.view addSubview:btn];
按钮还有很多其他的属性 比如:
默认情况下,当按钮高亮的情况下,图像的颜色会被画深一点,如果这下面的这个属性设置为no,那么可以去掉这个功能
btn.adjustsImageWhenHighlighted = NO;
默认情况下,当按钮禁用的时候,图像会被画得深一点,设置NO可以取消设置
btn.adjustsImageWhenDisabled = NO;
下面的这个属性设置为yes的状态下,按钮按下会发光*/
btn.showsTouchWhenHighlighted = YES;//在圆角按钮上实现了效果,但是在自定义按钮上没有实现,不知道什么问题
当然在定义按钮的时候,可以直接开辟空间来定义按钮,这个时候,按钮是默认
UIButtonTypeCustom风格
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(100, 100, 100, 50)];
[btn setTitle:@"看不见" forState:UIControlStateNormal];
[self.view addSubview:btn];
在我们自定义风格按钮的时候,如果我们只有一张方形图,但是我们在代码中要实现按钮有一定的圆角,这个也是可以实现的,
需要注意的是:我们需要用到一个包
QuartzCore 在需要实现圆角自定义按钮的时候,需要先导入QuartzCore 这个包,然后在文件之前,声明
#import <QuartzCore/QuartzCore.h>
然后在按钮定义里面实现以下代码就可以了
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(100, 100, 100, 50)];
//btn.frame = CGRectMake(100, 100, 100, 50);
[btn setImage:[UIImage imageNamed:@"按钮"] forState:UIControlStateNormal];
[btn setImage:[UIImage imageNamed:@"按钮2"] forState:UIControlStateHighlighted];
[btn.layer setMasksToBounds:YES]; //是都支持圆角
[btn.layer setCornerRadius:8.0f]; //圆角大小
[btn.layer setBorderWidth:1.0f]; //设置按钮外框大小
[btn.layer setBorderColor:[[UIColor whiteColor] CGColor]];
[self.view addSubview:btn];
相关文章推荐
- 【代码笔记】iOS-UIActionSheet动态添加按钮
- 【代码笔记】iOS-UIActionSheet动态添加按钮
- ios开发笔记之十一 --viewDidload的方法的基本介绍用代码设置按钮的属性
- ios开发笔记之十二 --viewDidload的方法的基本介绍用代码设置按钮的属性
- unityios开发----点击按钮添加Prefab代码
- 按钮添加网络请求的图片(多线程)(ios自学笔记)
- IOS开发笔记--UIButton类型属性简单归纳以及自定义按钮的设置
- iOS开发笔记>> storyboard 项目中控件 installed 属性简单介绍
- iOS- <项目笔记>UI控件常见属性总结
- 猫猫学iOS 之微博项目实战(4)微博自定义tabBar中间的添加按钮
- 【代码笔记】iOS-增加右侧按钮
- 【代码笔记】iOS-单击手势的添加
- iOS学习笔记之五--标题 frame属性和按钮属性
- iOS 11开发教程(十八)iOS11应用视图之使用代码添加按钮
- 【代码笔记】iOS-单击手势的添加
- ios开发笔记之十四--用代码来监听按钮的点击
- iOS 11开发教程(十八)iOS11应用视图之使用代码添加按钮
- iOS- <项目笔记> UIApplication常见属性与方法总结
- iOS学习笔记1(结合项目)---oc的@property属性
- IOS开发笔记-01按钮操作-12.frame&bounds&center属性