蓝懿IOS学习七大手势Touches

今天学习了ios编程里手势的方法及应用场景,屏幕页面中区分很多控件,有的控件可以有点击事件和用户直接交互,可以执行相应方法,如TextField,Button,UISEgmentControll等,但是静态lableUIImageView等就需要把交互开关打开,添加响应的手势才能实现交互。

刘国斌老师详细的对我们讲了七大手势,包括点击Touches,UIPanGestureRecognizer拖动,UILongPressGestureRecognizer长按手势,UIScreenEdgePanGestureRecognizer  侧滑等。

事件是当用户手指触击屏幕及在屏幕上移动时,系统不断发送给应用程序的对象。系统将事件按照特定的路径传递给可以对其进行处理的对象。在iOS中,一个UITouch对象表示一个触摸,一个UIEvent对象表示一个事件。事件对象中包含与当前多点触摸序列相对应的所有触摸对象,还可以提供与特定视图或窗口相关联的触摸对象。

响应者对象是可以响应事件并对其进行处理的对象。

UIResponder是所有响应者对象的基类,它不仅为事件处理,而且也为常见的响应者行为定义编程接口。

// 手势开始移动的时候,让图片的中心点跟着触摸点移动

case UIGestureRecognizerStateChanged:

self.ii.center=[sender locationInView:self.view];

break;

// 当手势移动结束的时候,判断是否在制定区域内,如果在则把图片添加到区域内,注意要转换图片从view到vie的坐标

case UIGestureRecognizerStateEnded:

if (CGRectContainsPoint(self.vie.frame, self.ii.center)) {

CGPoint old=self.ii.center;

CGPoint new=[self.view convertPoint:old toView:self.vie];

[self.vie addSubview:self.ii];

self.ii.center=new;

// 给移动后的图片添加---点击手势

UITapGestureRecognizer *tgr=[[UITapGestureRecognizer

时间: 2024-10-10 02:46:07

蓝懿IOS学习七大手势Touches的相关文章

#在蓝懿iOS学习的日子#

#在蓝懿iOS学习的日子#昨天我们学习了让uiimaag,学习了如何的插入图片,学习如何让它上下左右移动,其实就是加入按钮buttonon来控制图片的方向,还学习让图片在一定的范围内来回的移动,最后还制作了一个简易的游戏,我们都称之为简易的反射器,在下方设立一个按钮,发射一个图片,打击上方左右移动的image,为胜利,并以打中一次,来进行计分,难点就是两个图片的碰撞,设立的放h是这样的: //设置luobo与tu1障碍物的碰撞 //frame是指图片的矩形,进行碰撞 if (CGRectInte

蓝懿IOS学习图片编辑器

ios的学习在蓝懿另个月了,感觉学到了很多,这里的环境不错学习氛围也很好,刘国斌老师教了图片编辑,模拟美图秀秀,功能实现了边框,效果.滤镜,还有涂鸦. #pragma mark - Image picker controller 协议方法 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info

#蓝懿ios学习的日子#2015年10月12鈤

已经是进入蓝懿基础训练营的第四天,今天是练习日,刘国斌老师让自己练习敲代码,大家都很积极,早早就来到教室开始时敲代码,我呢,就把这几天学习的都每个都创建了一个的项目,开始练习第一天,如何学习ioS是什么,比较与市场的其他编程,和其他系统的区别,了解职业发展的进程,最后,刘国斌老师不但给我们介绍了xcode,还教我们用Xcode做了个iOS的UI界面的一个UI类label的生成,还有生成界面是怎么样的(在后面的 图片会展示我的成果),我们大家没一人还练习了一遍,只要认真的看老师做一遍,会打字,就会

蓝懿IOS学习SQL数据库

当前类中导入头文件 // 1.打开数据库 // 创建数据库文件所在路径字符串 NSString *path = @"/Users/Boris/Public/蓝懿第三期/Day31 - SQLite/test.db"; // 创建数据库指针, 先赋值为空, 稍后他会被赋值. // 以防万一出现野指针, C语言的空是 NULL, ObjC的空是 nil sqlite3 *db = NULL; // 打开数据库, 并且把已经打开的数据库赋值给 db 这个指针. // 第一个参数是数据库文件位

蓝懿IOS学习音频播放

// 准备歌曲数据 NSString *path = [[NSBundle mainBundle] pathForResource:@"Alan Walker - Fade.mp3" ofType:nil]; NSData *musicData = [NSData dataWithContentsOfFile:path]; // 初始化音频播放器(依据 NSData 初始化) NSError *errorMsg = nil; self.player = [[AVAudioPlayer 

蓝懿IOS学习TableCell之菜谱练习

今天刘国斌老师讲了如何通过路径获取文本,之后解析文本内容,最后显示到页面,利用了一天的时间详细教大家如何用xib类型的图形编辑自定义cell达到我们想要的cell标准.用了菜谱的demo演示如何编写,并且精了如何在网上获取图片. //   如果从网上请求数据,需要在info.plist配置文件里选择Open As再选择Soure Code修改添加一段代码 NSData *data=[NSData dataWithContentsOfURL:[NSURL URLWithString:menu.im

蓝懿IOS学习UICollectionView实战轮播图

今天刘国斌老师讲了关于JSON数据源的获取与利用,通过微博的实战项目进行练习,获取的数据都是网络上请求的真实数据,这种方式学起来很轻松,很容易理解. 刘国斌老师把今天做的练习题UICollectionView轮播图实现功能的方法步骤都下了下来,我们学起来很方便.   实现轮播图 效果的步骤: 1.创建layout (UICollectionViewFlowLayout) 2.设置layout的方向 默认上下 3.创建UICollectionView 4.设置delegate dataSource

#蓝懿iOSi学习的日子#2015年10月14日

#蓝懿iOSi学习的日子#已经进入了第五天的学习,当天已开始上课,一上来老师就给我们讲了NSString的使用,紧紧跟着l讲了字符串的拼接,一共讲了三种方法,紧接着做了前天的计算机的拓展,先是拉一个 label做了好多个button,label做了一个全局变量,button都做相应的tag,主要是button分为五个部分:数字.运算符.等号.AC.点,都做了相应的连线.第一,数字按钮,点击要显现文字:第二,点击运算符记录数字,声明按钮,点击数字按钮,可以得到什么:第三,做等号部分,生成第二个数字

蓝懿 iOS一周学习总结

在蓝懿学习已经一周多了. 时间如流水,在期间的日子慢慢冲刷掉了我的消极和懒惰.这些天来过得非常充实而充满张力.处于老师的富有创新的讲课方式和充满虚席热情的同学包围中,时间过得飞快. 在此回顾一下这些天的学习内容和学习感受. 课程从Objective-C开始.在老师介绍完计算机编程语言和基本的iOS基本常识后,正式进入OC的课程. 第一天,不仅认识了很多积极进取的同学.我们还接触到了如何控制label 让它显示指定的内容和Button 获取用户点击的事件的,虽然是简单的尝试,但是让我们对使用XCo