黑马程序员——按钮操作
来源:互联网 发布:js display block 编辑:程序博客网 时间:2024/04/30 03:17
1.transform简介:
@property (nonatomic) CGAffineTransform transform;
2> 控件的形变属性(可以设置旋转角度、比例缩放、平移等属性)。
2.frame简介:
@property (nonatomic) CGRect frame;
2> 控件所在矩形框的位置和尺寸(以父控件的左上角为坐标原点)。
3.图片资源:
1> Xcode项目中图片资源一般拖放在Supporting Files,可以在其目录内创建一个image文件夹;
2> 为某个控件\按钮设置图片,在该按钮的Background属性添加图片资源。
4.UIButton控件:
1> 按钮有状态,在State Config属性选择,默认情况下是Default普通状态,Highlighted高亮状态(手指按下去的时候);
2> 按钮间接继承自UIView。
5.frame修改按钮位置\移动按钮:
1> OC语法规定:不允许直接修改某个对象中结构体属性的成员;
2> 修改按钮位置方法:
CGRect temFrame = self.btn.frame; // 1.先取出frametemFrame.origin.y -= distance; // 2.修改y值self.btn.frame = temFrame; // 3.重新赋值按钮的frame
6.对按钮改变添加动画:
- (void)btnClickWithBlock:(void (^)())block // 利用block封装动画,省去重复代码{ [UIView beginAnimations:nil context:nil]; // 动画头部,动画开始 [UIView setAnimationDuration:1.0]; // 设置动画执行所需时间1s block(); // 调用block封装的代码 [UIView commitAnimations]; // 动画尾部,提交动画}
7.transform修改按钮形变属性:
1> 形变属性不会在以前的基础上再转多少角度,或者缩小放大多少倍;
2> 调用CGAffineTransformRotate(),传入当前按钮.transform、旋转角度,赋值给按钮.transform:
self.btn.transform = CGAffineTransformRotate(self.btn.transform, M_PI_4 * -1); // 按钮逆时针旋转45°
3> 调用CGAffineTransformScale(),传入当前按钮.transform、长、宽放大倍数,赋值给按钮.transform:
self.btn.transform = CGAffineTransformScale(self.btn.transform, 1.2, 1.2); // 按钮宽高均放大1.2倍
4> 将transform修改的属性清空,即清空之前所有的形变属性状态:
self.btn.transform = CGAffineTransformIdentity; // 恢复初始形状
8.补充:
1> center属性:
① 表示控件的中点(以父控件的左上角为坐标原点);
② 修改这个属性,可以调整控件的位置。
2> bounds属性:
① 表示控件的位置和尺寸(以自己的左上角为坐标原点,位置永远是(0, 0));
② 修改这个属性,只能调整控件的尺寸。
3> tag属性:
① 表示控件的标识;
② 通过不同标识可以区分不同的控件。
- 黑马程序员——按钮操作
- 黑马程序员—IO操作
- 黑马程序员—UI学记笔记—— 按钮
- 黑马程序员——通过代码创建按钮
- 黑马程序员—IOS按钮用法与属性实例
- 黑马程序员——数组操作
- 黑马程序员——数据库数据操作
- 黑马程序员——字符串各种操作
- 黑马程序员——文件操作
- 黑马程序员——文件操作
- 黑马程序员——String常用操作
- 黑马程序员——流操作规律
- 黑马程序员——IO流操作
- 黑马程序员——数组操作
- 黑马程序员——字符串常见操作
- 黑马程序员——配置,操作文件
- 黑马程序员—IO操作(1)
- 黑马程序员——【java】多线程——线程操作
- Java 集合类详解2
- HDU 5119 Happy Matt Friends(简单二维dp)
- 集训小记 7
- debian下利用aptitude安装指定版本的软件
- 2、类、对象、方法
- 黑马程序员——按钮操作
- majority element
- Tomcat内核之ASCII解码的表驱动模式
- 正则表达式分割小片段
- C#中大文件的复制
- TCP协议中的三次握手和四次挥手(图解)
- Java回顾之Spring基础
- 两网关同时使用
- 找出未收集统计信息,以及统计信息过期的表