- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
好吧,我有一些代码可以将 4 个识别器添加到一个 View 中,就像这样
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib
for(int d = UISwipeGestureRecognizerDirectionRight; d <= UISwipeGestureRecognizerDirectionDown; d = d*2) {
UISwipeGestureRecognizer *sgr = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)];
sgr.direction = d;
[self.view addGestureRecognizer:sgr];
}
[self restore];
[self populate];
[self displaymap];
和这样的识别器
-(void)handleSwipeFrom:(UISwipeGestureRecognizer *)recognizer
{
printf("Guesture: %d\n", recognizer.direction);
if (recognizer.direction == UISwipeGestureRecognizerDirectionLeft)
{
printf("a\n");
[self move: 'a'];
}
else if (recognizer.direction == UISwipeGestureRecognizerDirectionRight)
{
printf("d\n");
[self move: 'd'];
}
else if (recognizer.direction == UISwipeGestureRecognizerDirectionUp)
{
printf("w\n");
[self move: 'w'];
}
else if (recognizer.direction == UISwipeGestureRecognizerDirectionDown)
{
printf("s\n");
[self move: 's'];
}
else if (recognizer.direction == (UISwipeGestureRecognizerDirectionRight | UISwipeGestureRecognizerDirectionUp))
{
printf("y\n");
[self move: 'd'];
}
}
问题是,它永远检测不到 up |正确的方向,有人知道解决这个问题的方法吗?
最佳答案
这不是 direction
属性的工作方式。 UISwipeGestureRecognizer 一次只能识别一个方向的滑动。您需要做一些更复杂的事情,涉及 UIPanGestureRecognizer 并根据其 -translationInView:
/-velocityInView:
方法的结果确定其方向。
关于ios - UISwipeGestureRecognizer 对角滑动问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20556447/
我有这个代码: UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self
我在调用两次 UISwipeGestureRecognize 时遇到问题,我创建了基于 tabbarcontroller 的应用程序,该应用程序有 4 个选项卡。每个选项卡在该 UIViewContr
是否有一种简单的方法可以延长滑动被识别之前必须移动的距离。看来默认值真的很短。它不仅仅是一个水龙头,但只是勉强。我是否需要创建自定义手势识别器来覆盖此距离? 谢谢。 最佳答案 没有记录的属性可以设置,
我需要根据用户是否滑动屏幕顶部、屏幕中间或屏幕底部来触发不同的事件。我正在尝试找出最好/最简单的方法来做到这一点,因为我很确定没有办法从 UISwipeGestureRecognizer 获取位置。
我正在使用 UISwipeGestureRecogizer刷卡left和 right通过使用 UISwipeGestureRecognizerDirectionRight和 UISwipeGestur
我在 iOS 应用程序中收到无法识别的选择器发送错误。我尝试根据其他类似线程中提到的答案解决该问题,但失败了。请看一下下面的代码并帮助我解决这个问题。 谢谢 class ThirdViewContro
我已经为左/右设置了一个 GestureRecognizer,但我还想为向下(但不是向上)添加一个 GestureRecognizer。当我应用以下内容时,向上滑动在设备屏幕上按预期工作;但是,UIS
我在我的UITabBarController中使用UISwipeGestureRecogniser: class TabBarController: UITabBarController {
我有一个滑动手势识别器,在用户滑动后将其关闭。那时我有一系列动画。第一, View 将沿着用户滑动的方向移动。然后,根据它停止的位置,根据它停止的位置发生另一个动画。然后,我在处理此滑动的函数末尾一直
我有以下 UIGestureRecognizer 可以正确检测向上滑动 - (void) addGestureRecognizer { _swipeRecognizer = [[UISwipe
我在使用 UISwipeGestureRecognizer 时遇到了一些异常行为。可以正确检测到第一次滑动,但无法正确检测到第二次滑动。然后第三次滑动被正确检测到,但第四次没有被正确检测到,等等。我有
我想在滑动 UItextView 时调用一个方法,并确定其标签。我正在使用这段代码: -(IBAction)donecomment:(id)sender{ UISwipeGestureRecogniz
我在 ImageView 中添加了4个UISwipeGestureRecognizer。但是当我向右滑动时,会触发向上UISwipeGestureRecognizer。当我向左滑动时,不会触发UISw
如果我将 UISwipeGestureRecognizer 应用于 View ,则当设备旋转时,滑动方向将按预期工作。但是,如果 UISwipeGestureRecognizer 在 AppDeleg
我如何识别UISwipeGestureRecognizer与 UISwipeGestureRecognizerDirectionUp然后紧接着,无需抬起手指,就识别出 UISwipeGestureRe
在我的 spritekit 游戏中,我试图使 2 个 UISwipeGestureRecognizers 可以同时被识别,但是,我无法这样做。任何帮助将不胜感激,在此先感谢。下面是我的代码... 在
在我的 UiView 中,我有一个名为“container”的 subView,如果用户向上或向下滑动,它应该执行旋转动画。基本上它就像一个轮子,如果用户向下滑动轮子,则向下滑动一定程度,同时向上滑动
我正在尝试创建一个由 UISwipeGestureRecognizer 触发的自定义交互过渡,但状态始终为 UIGestureRecognizerStateEnded,因此我无法使用它来控制动画。 A
在 iOS/Swift 中,UIGestureRecognizer 为 swiping有 location 方法 determine the location where a swipe begin.
我在 SpriteKit、Swift 中有 3 个 SKScenes: 一级 游戏结束 2 级。 在Level 1和Level 2中,我的角色移动是通过以下代码完成的: class Level1: S
我是一名优秀的程序员,十分优秀!