中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS實現拖拽View跟隨手指浮動效果

發布時間:2020-08-24 01:47:05 來源:腳本之家 閱讀:1403 作者:LayneCheung 欄目:移動開發

本文實例為大家分享了iOS實現拖拽View跟隨手指浮動的具體代碼,供大家參考,具體內容如下

效果圖:

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上去;

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绥宁县| 北辰区| 馆陶县| 宁津县| 长泰县| 西丰县| 彰化县| 丁青县| 襄汾县| 咸丰县| 松江区| 江津市| 峨山| 新密市| 赤城县| 东辽县| 诸城市| 吴旗县| 太保市| 墨竹工卡县| 云浮市| 攀枝花市| 拉孜县| 铜川市| 遂溪县| 平邑县| 江山市| 长阳| 布尔津县| 本溪| 庐江县| 平罗县| 石屏县| 随州市| 濉溪县| 吉木乃县| 禹城市| 宕昌县| 砀山县| 巴青县| 界首市|