美文网首页
iOS开发之UI(四)

iOS开发之UI(四)

作者: zero点点 | 来源:发表于2016-02-16 16:44 被阅读56次

事件:当用户手指触击屏幕以及在屏幕上移动时,系统不断发送给应用程序的对象,一个UIEvent对象表示一个事件

触摸:有事件控件两方面

  • 时间:手指放下,手指移动,手指抬起

  • 空间:手指放下,移动,抬起的位置

  • 触摸开始
    - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent: (UIEvent *)event { NSLog(@"开始触摸"); }

  • 手指移动
    - (void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { UITouch *touch = [[touches allObjects] lastObject]; CGPoint point = [touch locationInView:self]; NSLog(@"x = %f, y = %f", point.x, point.y); }

  • 触摸结束
    - (void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { NSLog(@"触摸结束"); }

响应者链:一个响应者对象的连接序列,事件或动作消息依次传递

响应者:iOS中所有能响应事件的对象都是响应者,一同定义了一个抽象的父类UIResponder来表示响应者

检查触摸:UIApplications -> window -> ViewController -> view -> 检查所有子视图
处理事件:触摸的子视图 -> view -> ViewController -> window -> UIApplication

视图类的属性userInteractionEnabled可以阻断响应者链
userInteractionEnabled:用户界面响应开关

手势识别器

手势识别器:UIGestureRecognizer,用于识别手势

手势:有规律的触摸

系统提供的手势识别器这个抽象父类我们是不会直接使用,而是根据需求使用特定的子类手势,系统提供的手势类型:

  • 轻拍:UITapGestureRecognizer
  • 长按;UILongPressGestureRecognizer
  • 旋转:UIRotationGestureRecognizer
  • 捏合:UIPinchGestureRecognizer
  • 平移:UIPanGestureRecognizer
  • 轻扫:UISwipeGestureRecognizer
  • 屏幕边缘轻扫:UIScreenEdgePanGestureRecognizer

创建方法

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tap)];

添加方法

[self.imageView addGestureRecognizer:tap];

其他类同理

View的transform属性

transform:能改变view的现实状态,实现view的缩放、旋转、平移

  • 平移:CGAffineTransformMakeTranslation
  • 缩放:CGAffineTransformMakeScale
  • 旋转;CGAffineTransformMakeRotation

方法1,此方法只能改变一次imageView的transform,即第二次触发不生效

self.imageView.transform = CGAffineTransformMakeRotation(1.0);

方法2,此方法能多次触发,意为在当前的transform上再次进行更改

self.imageView.transform = CGAffineTtansformRotation(self.imageView.transform,1.0);

其他方法同理

相关文章

  • UI常用的控件

    #iOS开发之UI篇#iOS开发之UI篇 #常用控件介绍1## #UI第09天:滚动视图# ##UIScrollV...

  • KVC

    iOS 如何使用KVC iOS开发UI篇—Kvc简单介绍 iOS开发系列--Objective-C之KVC、KVO

  • iOS开发之UI(四)

    事件:当用户手指触击屏幕以及在屏幕上移动时,系统不断发送给应用程序的对象,一个UIEvent对象表示一个事件 触摸...

  • IOS学习(9)-UITabBarController

    iOS开发UI篇—UITabBarController简单介绍视图之UITabBarController结构详解(...

  • iOS部分控件介绍及设计规范

    iOS及Android图标按钮设计规范 UI设计师需要了解的开发中常用的UI控件(ios篇) iOS交互设计基础之...

  • 2019-03-22

    iOS 开发之修改图片image颜色 吐槽:平时开发中可能因为 UI妹子懒给到图片中没有需要的颜色,或者嫌弃UI...

  • UITableView ──分页加载

    IOS开发UI展示之UITableView ──分页加载 在ios开中中,由于屏幕尺寸限制,如果需要显示的数据很多...

  • iOS Dev Fundamentals----An Brief

    1 概述 iOS开发基础技术大致分为以下四个方面: 1)UIKit & Other UI-Related ...

  • iOS开发之定位

    iOS开发之定位 iOS开发之定位

  • UI第一周学习总结

    ios开发之UI学习第一周总结 UIView基本属性、方法、视图关系、动画 基本属性和方法 UIView:是iOS...

网友评论

      本文标题:iOS开发之UI(四)

      本文链接:https://www.haomeiwen.com/subject/stnpkttx.html