UIView总结

说明:UIView在ios开发中极其重要,下面对UIView的常用属性和方法做一简单总结

 

一.位置尺寸属性

   1.frame:控件所在矩形框的位置及其尺寸,以父控件的左上角为坐标原点

            控件的frame不可直接进行修改,必须先取出来,修改过后,在进行赋值

   2.bunds:同样表示控件所在矩形框的位置与尺寸,但是以自己的左上角为坐标原点,因此其x与y值始终为0

   3.center:控件中心的位置,以父控件的左上角为原点

   总结:frame与center可设置控件的位置

         frame与bounds可设置控件的尺寸

         center相对于frame设置控件位置更加方便

 

二.标记属性

   tag:用于给该控件设置标记值,当有多个控件时可通过其tag值单独进行设置

 

三.形变属性

   transform:这是UIView的一个比较有意思的属性,配合动画属性,会做出很多有趣的界面。UIView的transform属性就是一个CGAffineTransform类型的数据,默认值为CGAffineTransformIdentity,用于控制控件的缩放,旋转,及其3D旋转(用到较少,笔者也不了解,下面不做解释)

   下面介绍常用的方法:

        控制缩放的方法:

                CGAffineTransformMakeScale相对于UIView的初始状态进行缩放变换

                CGAffineTransformScale相对于UIView的当前状态进行缩放变换

        控制旋转的方法:

               CGAffineTransformMakeRotate相对于UIView的初始状态进行旋转变换

               CGAffineTransformRotate相对于UIView的当前状态进行旋转变换

    控制缩放与旋转的方法很像,很方便记忆,学习OC的过程中会发现,很多诸如此类的例子 

四.动画

    动画在ios中很方便,使用起来很轻松,个人觉得这也是ios软件受欢迎的一个原因,会给用户良好的体验

UIView的动画并不能完全体现ios动画的优势,不过还是很不错。

   下面开始介绍:

    首先是UIView封装的简单的动画效果:

                                [UIView beginAnimations:nil context:nil];
                                       // 设置动画持续时间
                                [UIView setAnimationDuration:.3];
                                      // 需要动画的代码段
                                 [UIView commitAnimations];

                                 效果就是简单的减慢或加快了运动的时间。

 

   另外UIView封装了三个块动画方法:

      [UIView animateWithDuration:animations:]
      [UIView animateWithDuration:animations:completion:]
      [UIView animateWithDuration: delay: options: animations: completion:]

   这些方法具体怎么实现,怎么用在此不做赘述,实验一两次即可知道,在此说明下对比beginAnimations动画的方式,块动画具有的几点优势:
                           1.可以在动画完成时做一些其他的任务
                           2.可以设置动画延迟及动画效果选项
                           3.块动画支持嵌套

 

注:以上皆为个人理解,如有错误,请留言指正,万分感谢。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值