草庐IT

gestureRecognizer

全部标签

ios - 在我点击我的 MPVolumeSlider 后,UIView 上的 UITapGestureRecognizer 被触发

我在stackoverflow上找到了一些关于该问题的问题和答案,但那里的解决方案都没有解决我的问题。我的iOS应用程序能够使用不错的音乐播放器播放一些音乐。我用Xcode的InterfaceBuilder设计它并拖出一个UIView并将其类更改为MPVolumeView。当我在iPhone6上调试我的应用程序时一切正常。这是我的问题:我还在我的整个View上拖出了一个UITapGestureRecognizer,其中包含我的控件,如play/pause,next/previoustrack(...)还有我的MPVolumeView。当我点击该View时,它应该淡出并消失。然后我在我的

ios - [ViewController gestureRecognizer :shouldRecognizeSimultaneouslyWithGestureRecognizer:]: message sent to deallocated instance

我有一个简单的场景。我将myViewController插入导航堆栈。myViewController基本上是在整个屏幕上显示一个CollectionView。我在此CollectionView上添加了一个额外的UIPanGestureRecognizer并将myViewController设置为其委托(delegate)。我在myViewController中保留了对平移手势识别器的强烈引用。当我点击返回时,myViewController从导航堆栈中弹出并释放。myViewController的dealloc方法被正确调用。到目前为止,一切都按预期工作。然后我尝试像第一次一样打开相

ios - 只检测从右到左的旋转手势

我能够检测到旋转手势,但我只需要检测从右到左的那个。如果有任何帮助,我将不胜感激。谢谢! 最佳答案 我假设您正在使用UIRotationGestureRecognizer来检测旋转。你应该有这样的东西:UIRotationGestureRecognizer*gestureRecognizer=[[UIRotationGestureRecognizeralloc]initWithTarget:selfaction:@selector(gestureRecognizerAction:)];[self.viewaddGestureReco

objective-c - IB 的 GestureRecognizers 在模拟内存警告时使应用程序崩溃

我有一个从Storyboard中提取的手势识别器,它工作正常而且很漂亮...除了我模拟内存不足警告时。那时,它因错误而崩溃:[UISwipeGestureRecognizerretain]:messagesenttodeallocatedinstance0x8627330为了让它不崩溃,我要做的是将手势识别器设置为强属性,并在viewdidload中将自动生成的设置注释掉为nil://[selfsetSwipeGestureRecognizer:nil];我随机得到这个解决方案,我希望有人能解释这里发生了什么? 最佳答案 迷人。当你

ios - 如何比较iOS上的手势类型?

我在一个View上有两种不同类型的三种不同手势。第一个是UITapGestureRecognizer,另外两个是UILongPressGestureRecognizer。长按手势识别器有不同的minimumPressDuration,一个是0.15,另一个是0.50,所以我实现了以下功能所有手势都被识别:-(BOOL)gestureRecognizer:(UIGestureRecognizer*)gestureRecognizershouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer*)otherG

ios - 将其他 View 拖到 View 上时,还有另一种检测 View 的方法吗?

我使用平移手势在拖动线中拖动多View,类似这样的:iOS-DraganddropcollisiondetectionHowtodetectwhenyourselecteditemdragsoveranothersubview?我的代码:-(void)viewDidLoad{[superviewDidLoad];for(UIView*aViewinself.view.subviews){[selfaddGestureRecognizersToPiece:aView];}}-(void)addGestureRecognizersToPiece:(UIView*)piece{UIPanGe

objective-c - UIScrollView 和取消缩放手势

如何在UIScrollView上强行取消缩放打开捏合手势,比如当用户缩放“足够”远以触发新操作时? 最佳答案 要防止用户Controller缩放和平移但仍允许ScrollView的编程缩放和平移,最好的方法是覆盖UIScrollView's-addGestureRecognizer:子类中的方法。-(void)addGestureRecognizer:(UIGestureRecognizer*)gestureRecognizer{//Preventanyofthedefaultpanningandzoomingcontrolsfro

ios - 将 UIView 移动限制为仅垂直或水平轴

我正在使用PanGestureRecognizer并在UIGestureRecognizerStateChanged中让用户手指移动屏幕上的View。我将其用于Tinder之类的滑动手势,现在我想将View的移动限制在水平轴或垂直轴上,无论用户开始滑动的方向如何。我一直在上下搜索,但在这里找不到合适的东西。有没有什么巧妙的方法可以根据用户开始滑动View的方向来限制轴的移动?非常感谢!更新:这是移动View的当前代码:-(void)dragged:(UIPanGestureRecognizer*)gestureRecognizer{CGFloatxDistance=[gestureRe

ios - 在 UITableviewCell 中嵌入的 UITableView 中滚动(ios7)

我将UITableView添加为UITableviewCell的subview。在iOS6中,当我滚动内部tableView并到达它的末尾时,主TableView变为滚动。在iOS7中,它不再起作用。如果我在内部TableView中滚动,它不会将此滚动事件传递给父tableView。有谁知道如何简单地修复它,而无需手动将事件从内部TableView传输到父级?附加信息:我找到了problem的可能原因.但是如何解决这个问题。 最佳答案 所以,我找到了解决办法。根据@FaisalAli的提示,我实现了委托(delegate)方法:-(

IOS:使用手势计算与两个 cgpoint 的距离

我在View中有这个手势代码-(void)rightSwipeHandle:(UIPanGestureRecognizer*)gestureRecognizer{CGPointtouchBegan;CGPointpointEnd;if(gestureRecognizer.state==UIGestureRecognizerStateBegan){CGPointtouchBegan=[gestureRecognizerlocationInView:gestureRecognizer.view];NSLog(@"pointBegan:%@",NSStringFromCGPoint(touc