locationInView和translationInView的区别

发布时间:2021-10-23 08:40:31

locationInView和translationInView的区别:


1. locationInView类UIGestureRecognizer的方法,translationInView是UIPanGestureRecognizer的方法。


2.?locationInView是指当前点击在指定视图中的位置,translationInView是在指定的坐标系中移动,听起来更不知所云,举个例子会直观些(在一个view中通过手势移动另外一个view):


定义类SubView:


//.h?


@interface?SubView:?UIView?




@end







?@implementation?abc {


? ?CGPoint ?_initPoint.;


?}



-?(void)drawRect:(CGRect)rect?{

????UIPanGestureRecognizer?*panGuest?=?[[UIPanGestureRecognizer?alloc]?initWithTarget:self?action:@selector(pan:)];

????[self?addGestureRecognizer:panGuest];

}



-?(void)pan:(UIPanGestureRecognizer*)g?{

???
?
CGPoint?p?=?[g?translationInView:self.superview];

????
CGPoint?pp?=?[g?locationInView:self.superview];

????


????if?(g.state?==?UIGestureRecognizerStateBegan)?{

????????_initPoint?=?self.center;

????}



????self.center?=?CGPointMake(_initPoint.x?+?p.x,?_initPoint.y?+?p.y);

}



@end?






然后在需要使用的控制器中的viewDidLoad加上:


SubView *subView = ?[[SubView?alloc]?initWithFrame:CGRectMake(0,?0,?100,?100)];

subView?.backgroundColor?=?[UIColor?greenColor];?


[self.view addSubview subView];





效果图如下:




将绿色窗口滑动到屏幕的中心,好了现在在上面红色代码行打上断点,再次往左上角移动绿色窗口, 看p和pp的值,此时


1.p(0,-1.0)pp(159, 209)


2.p (-22.5, -39.5) ? pp(136,5, 170)


断点跑完了之后,再次往左上角移动绿色窗口:



1.p(0,-4.5)pp(127, 165)


2.p (-13.5, -36.5) ? pp(114.5, 134.5)


发现规律了吗!我们知道? ???p?对应的是 translationInView:self.superview;
pp?=对应的是 locationInView:self.superview;


看p坐标你会发现p是每次引动都是以被移动(绿色view)的左上角的作为参照坐标的(每次移动都是从原点(0,0)为其实坐标)


看pp引移动的view的父view左上角的作为参照坐标的(每次移动都是以上一次为原点移动)

相关文档

  • Python,Php,Ruby 三者中为什么会选择Python
  • 云朵云朵
  • 【敬畏生命的演讲稿】敬畏生命地震后演讲稿
  • 冰糖能与樱桃一同煮水吗
  • 简单的刺绣手工艺图片
  • 手机系统时间老是错误怎么办啊
  • 魅族5flyme强制解锁教程
  • 漂白水和84哪个漂白好漂白水和84可以一起用吗
  • 妇科疾病的用药
  • 溺水安全小知识资料
  • 系统声音是什么
  • 工欲善其事,必先利其器之-mac下使用zsh
  • 家长委员会工作计划4篇
  • 渗透系列之解决APP抓包证书不合法问题
  • 淘宝店铺新手推广技巧
  • 感恩献给母亲
  • 谈判计划书优选12篇
  • 教孩子学编程_我们应该教我们的孩子如何编码。 还是应该?
  • 宫外孕手术后多久可以同房呢 宫外孕手术后还可以生育吗
  • 《李开复自传》读后感1000字
  • 称呼礼仪常识大全
  • 春季五脏应该怎么养
  • 过度保胎会增加胎儿畸形风险吗怀孕后必须保胎吗
  • 华为手机录音后没有文件在哪里设置
  • 小米手环监测睡眠准吗
  • 小孩房间的平面设计效果图
  • 笔记本电脑cpu不足怎么办
  • 怎么炒土豆丝
  • jar使用外部配置文件启动
  • 2019年天津高考改革最新方案
  • 猜你喜欢

  • 律师事务中行政申诉状及范例
  • 管窥初中数学中的美
  • 教师节升旗仪式发言稿
  • 呼叫中心系统的技术及组成
  • 【新品推荐】八年级语文下学期期末测试题课件 (新版)新人教版
  • 湖南湘昊投资管理有限公司企业信用报告-天眼查
  • 毕业论文(设计说明书)的撰写
  • 学校创先争优领导点评工作总结-word范文文档
  • 小型葡萄埋藤机的研制
  • 美术设计师年终工作总结与群众工作全覆盖常态化征集情况报告汇编
  • 部编版初中历史九年级上册第10课拜占庭帝国和《查士丁尼法典》(课件2)共11张PPT
  • 企业网银客户端软件用户手册
  • 2018-2019学年河北省沧州盐山中学高二下学期期中考试地理试卷
  • 我的幻想城作文_初二作文
  • 2012年考研政治大纲预测及课程复*对策
  • 襄城县麦岭供销社结实农资服务部企业信用报告-天眼查
  • 辽宁保监局关于太*人寿保险有限公司辽宁分公司筹建兴城支公司的通知
  • 高一物理:5.1《牛顿第一定律》每课一练5(沪科版必修1)
  • 2019年汽车租赁合同协议书范本简约版
  • 麝香的功效作用及食用方法
  • 安全风险分析报告范文
  • 2018_2019学年九年级数学下册第4章概率综合测试卷*题课件新版湘教版ppt版本
  • 【知识学*】如何写创业策划书
  • 高一地理《经济发达地区的可持续发展》达标测试-精选教学文档
  • 最新XX年新护士工作总结
  • 【获奖课件】2已修改已修改(人教PEP)六年级英语下册课件_Unit_4(13)[1].ppt(1)
  • 2017-2018学年第二学期苏科版八年级下册生物第二十五章第2节关注家庭生活安全同步测试(无答案)
  • 真爱找麻烦的演员 真爱找麻烦是谁演的
  • 会计个人年终工作总结开头100字范文
  • 部编版五年级语文下册11.军神(教案)
  • 2019赞美父亲节演讲,感恩父母,回报社会
  • 酒店管理调研 调研门店选址基本资料――集团连锁酒店管理公司2031(叶予舜)
  • 并发编程—《Java并发编程的艺术》学习笔记 第一章 并发编程的挑战
  • 2018届安徽省皖莫诵8呷?诙?唯12月)联考数学理试题(解析版)
  • 【精编】中小学精品课件制备实验方案的设计课件.ppt
  • 精彩感情散文
  • 【K12教育学*资料】山西省*遥县高中数学第一章集合与函数概念1.3.2函数的奇偶性1教案新人教A版
  • 2015年浙江省杭州市萧山区高桥初中教育集团八年级(上)物理期中试卷和解析答案
  • 大学生幸福观教育研究现状述评
  • C# 模拟键盘操作SendKey(),SendKeys()
  • 快速排序 java导包_排序算法-快速排序(Java实现)
  • 化工原理第二章-静力学方程应用
  • 电脑版