草庐IT

uigesturerecognizer

全部标签

ios - UIGestureRecognizer 中多次触摸的顺序

似乎无法保证循环通过UIGestureRecognizer的方法[locationOfTouch:inView:]时UITouches出现的顺序。具体来说:for(inti=0;i人们会认为索引为0的点将是第一个UITouch,或者第一个被释放的点,但2个触摸的顺序经常被混淆。有谁知道如何测试这些事件的顺序?不幸的是,无法访问UITouch对象本身(带有时间戳)。此外,文档中不保证-locationOfTouch:inView:中的触摸始终处于可靠的顺序。谁能证实或否认这一点? 最佳答案 您可以尝试设置识别器的delegate属性并

ios - 附加/删除 UIGestureRecognizers 的正确方法

在View上附加和删除UIGestureRecognizer的正确方法是什么?我通常在-viewDidLoad中创建和附加UIGestureReconizers。我应该在-viewDidUnload中使用removeGestureRecognizer吗?还是它们会自动删除?例如,创建一个UIGestureRecognizer属性并在viewController的init方法中对其进行初始化,然后在-viewDidAppear/-viewDidDisappear中附加/删除此gestureRecognizer属性是否更好?>?(注意我正在使用ARC)谢谢。 最

ios - UIGestureRecognizer 拖动 UIView

我正在尝试构建一个GestureRecognizer以将UIView从右向左拖动。如果用户将View拖到屏幕的一半,View会自动拖到左下角以丢弃它,但如果用户没有拖到屏幕的一半,它将返回到屏幕的右上角。这里有点迷路,有教程之类的吗?谢谢编辑:下面是一些代码,它是一个UIImageView,位于UIScrollView中,我需要拖动整个滚动条或仅拖动其中的图像它:_myScroll=[[UIScrollViewalloc]initWithFrame:CGRectMake(0,0,self.window.bounds.size.width,self.window.bounds.size.

objective-c - 获取 UIGestureRecognizer 的 UITouch 对象

有没有办法获取与手势关联的UITouch对象?UIGestureRecognizer似乎没有任何方法。 最佳答案 Jay是对的……您需要一个子类。试试这个尺寸,它来self的一个项目。在DragGestureRecognizer.h中:@interfaceDragGestureRecognizer:UILongPressGestureRecognizer{}-(void)touchesMoved:(NSSet*)toucheswithEvent:(UIEvent*)event;@end@protocolDragGestureReco

ios - UIGestureRecognizer 导致循环保留?

我在想,如果在手势识别器的initWithTarget:action:方法中将目标指定为self,会不会造成循环保留?由于self将在self.gestureRecognizers中保留识别器,并且手势识别器也可能在initWithTarget:action中保留self。下面会是解决方案吗?__weakVRDrawer*weakSelf=self;UIGestureRecognizer*tapRec=[[UITapGestureRecognizeralloc]initWithTarget:weakSelfaction:@selector(handleTap:)];

ios - UIGestureRecognizer 和 UITableViewCell 问题

我将UISwipeGestureRecognizer附加到cellForRowAtIndexPath:方法中的UITableViewCell,如下所示:-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*)indexPath{staticNSString*CellIdentifier=@"Cell";UITableViewCell*cell=[tableViewdequeueReusableCellWithIdentifier:CellIdentifier];if(

uigesturerecognizer - onLongPress 之后不调用 onTapUp

我正在尝试创建一个上下文菜单,该菜单在长按后显示,同时将手指保持在对象上,之后您将选择一个选项(通过拖动手指)并抬起它以启动操作。我注意到一些对我来说有点奇怪的事情。首先,代码:import'package:flutter/material.dart';voidmain(){runApp(MaterialApp(home:Scaffold(body:GestureDetector(onLongPress:(){print("onLongPress");},onTapUp:(TapUpDetailsdetails){print("onTapUp");},child:Center(chil

ios - 使用 UIGestureRecognizer 旋转瓶子

我现在正在使用此代码在点击按钮时旋转瓶子:@IBActionfuncspinButton(sender:AnyObject){letrotateView=CABasicAnimation()letrandonAngle=arc4random_uniform(360)+720rotateView.fromValue=0rotateView.toValue=Float(randonAngle)*Float(M_PI)/180.0rotateView.duration=3rotateView.delegate=selfrotateView.repeatCount=0rotateView.re

ios - 添加 UIGestureRecognizer 以从左向右滑动我的 View

这个问题在这里已经有了答案:ViewsNavigationUsingSwipeGesture(5个回答)关闭9年前。我有一个具有不同UIViewControllers的UIStoryboard,我想添加另一个UIViewController(如仪表板),当用户从左侧滑动ipad时,仪表板将出现然后当他向后滑动时,当前View将被恢复。这可能吗?如果是的话,任何提示如何做到这一点或UIGestureRecognizer的任何好的教程?谢谢。 最佳答案 UISwipeGestureRecognizer*swipeleft=[[UISwi

ios - 如何从 UIGestureRecognizer 获取 UITouch 位置

我想从UIGestureRecognizer获取我的水龙头的UITouch位置,但我无法通过查看文档和其他SO问题来弄清楚如何。你们中的一个可以指导我吗?-(void)handleTap:(UITapGestureRecognizer*)tapRecognizer{CCLOG(@"Singletap");UITouch*locationOfTap=tapRecognizer;//Thisdoesn'tworkCGPointtouchLocation=[_tileMapconvertTouchToNodeSpace:locationOfTap];//convertTouchToNodeS