网站首页 网站建设 IT知识 IT知识教程 iOS实现拖拽View跟随手指浮动效果

iOS实现拖拽View跟随手指浮动效果

2021-05-20 21:13:02

本文实例为大家分享了iOS实现拖拽View跟随手指浮动的具体代码,供大家参考,具体内容如下

效果图:

1.自定义要跟随手指浮动的那个View

//// OrangeView.m// 拖拽View跟随手指浮动//// Created by llkj on 2017/8/16.// Copyright © 2017年 LayneCheung. All rights reserved.//#import "OrangeView.h"@implementation OrangeView//当开始触摸屏幕的时候调用- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ NSLog(@"%s", __func__);}//触摸时开始移动时调用(移动时会持续调用)//NSSet:无序//NSArray:有序- (void)touchesMoved:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ NSLog(@"%s", __func__); UITouch *touch = [touches anyObject]; //求偏移量 = 手指当前点的X - 手指上一个点的X CGPoint currentPoint = [touch locationInView:self]; CGPoint prePoint = [touch previousLocationInView:self]; NSLog(@"ccurrentPoint = %@", NSStringFromCGPoint(currentPoint)); NSLog(@"prePiont = %@", NSStringFromCGPoint(prePoint)); CGFloat offSetX = currentPoint.x - prePoint.x; CGFloat offSetY = currentPoint.y - prePoint.y; //平移 self.transform = CGAffineTransformTranslate(self.transform, offSetX, offSetY);}//当手指离开屏幕时调用-(void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ NSLog(@"%s", __func__);}//当发生系统事件时就会调用该方法(电话打入,自动关机)- (void)touchesCancelled:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ NSLog(@"%s", __func__);}@end

2.创建自定义的View

在storyboard中拖一个View绑定他的类为OrangeView;
或者代码创建手动添加到控制器的View上去;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。 如涉及版权问题,请提交至online#300.cn邮箱联系删除。

以上产品还未完全满足我的所有需求,在下方提交我的专属需求
我的专属需求:
*手机号:
*验证码:
img
咨询报价
现在咨询
img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP