我试图在我的视图中添加一个UIGestureRecognizer。它没有受到任何接触。我就是这样做的:
@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");
}我没有得到任何输出。无论是触碰还是滑动。我不知道我做错了什么。我对每一个帮助都很高兴
发布于 2014-11-18 08:08:02
只要稍加调整,您的代码就能工作。在我看来奇怪的是你的视图的框架,它将关闭屏幕。如果它没有屏幕,你怎么能触摸到它?尝试更改背景颜色(例如,红色),以便您可以看到视图,并将该-size.x更改为0,以便视图在屏幕上。
发布于 2014-11-18 07:25:28
好了!问题是,我的观点正从屏幕外的动画中移开。视图是移动的,但不是GesturRrecognizer。当我将视图的startPosition设置为x=0和y=0时,它可以工作。
谢谢你的帮助梅奥!
https://stackoverflow.com/questions/26982156
复制相似问题