首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIGestureRecognizer iOS

UIGestureRecognizer iOS
EN

Stack Overflow用户
提问于 2014-11-17 21:18:29
回答 2查看 271关注 0票数 0

我试图在我的视图中添加一个UIGestureRecognizer。它没有受到任何接触。我就是这样做的:

代码语言:javascript
复制
@interface SettingsView()<UIGestureRecognizerDelegate>
@property (nonatomic, strong) UIView *menu;
@end

@implementation FRMSettingsView

- (id)initWithSize:(CGPoint)size {
    if (self = [super initWithFrame:[[UIScreen mainScreen] bounds]]) {
        self.menu = [[UIView alloc]initWithFrame:CGRectMake(-size.x, 0, size.x, size.y)];
        self.menu.backgroundColor = [UIColor whiteColor];
        self.menu.UserInteractionEnabled = YES;
        [self addSubview:self.menu];

        UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(SwipeRecognizer:)];
        recognizer.direction = UISwipeGestureRecognizerDirectionRight;
        recognizer.numberOfTouchesRequired = 1;
        recognizer.delegate = self;
        [self.menu addGestureRecognizer:recognizer];
    }
    return self;
}

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
    NSLog(@"touch");

    return YES;
}

- (void) SwipeRecognizer:(UISwipeGestureRecognizer *)sender {
    NSLog(@"swipe");
}

我没有得到任何输出。无论是触碰还是滑动。我不知道我做错了什么。我对每一个帮助都很高兴

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-18 08:08:02

只要稍加调整,您的代码就能工作。在我看来奇怪的是你的视图的框架,它将关闭屏幕。如果它没有屏幕,你怎么能触摸到它?尝试更改背景颜色(例如,红色),以便您可以看到视图,并将该-size.x更改为0,以便视图在屏幕上。

票数 1
EN

Stack Overflow用户

发布于 2014-11-18 07:25:28

好了!问题是,我的观点正从屏幕外的动画中移开。视图是移动的,但不是GesturRrecognizer。当我将视图的startPosition设置为x=0和y=0时,它可以工作。

谢谢你的帮助梅奥!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26982156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档