很抱歉,如果我忽略了一个潜在的回答我的问题,但我在使用与一个UILabel的UITapGestureRecognizer子视图UIViewController类中的麻烦......
基本上,我已经创建了一个有一个UILabel和其他一些不相干的元素自定义的UIViewController。 这个自定义的UIViewController,然而,是启用分页定制的UIScrollView内,标签偏移刚好够,所以你可以看到下一个UIViewController的标签。 动画:方法火灾,基本切换页面无需滚动当用户触摸“下一个”标签下,scrollRectToVisible我想要做的就是。 该CustomViewController的UILabels位于顶部。
下面是当添加UITapGestureRecognizer到CustomViewController的的UILabel容器的UIScrollView的示例代码:
[scrollView addSubview:CustomViewController];
- (void) addSubview: (CustomViewController *) view {
// create view's frame here...
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(fireScrollRectToVisible:view)]; // this is the current problem like a lot of people out there...
[view.Label addGestureRecognizer:tap];
// [super addSubview:view.view];
}
- (void) fireScrollRectToVisible: (CustomViewController *) cvc {
CGRect frame = CGRectMake(cvc.view.frame.origin.x, cvc.view.frame.origin.y, 320, 480);
[scrollView scrollRectToVisible: frame animated:YES];
}
我最初以为这将是容易的,但是由于@selector不允许你把它的参数使得它非常困难。 我想,我需要的是访问CustomViewController的框架和下,scrollRectToVisible设置为,但我不知道了...
我试过这个职位,但在我的Objective-C是很新,我不完全理解则hitTest:withEvent:方法我假设则hitTest:(CGPoint)有事情做与视图的边界?
UITapGestureRecognizer initWithTarget:动作:方法来接受参数?
如果任何人都可以在正确的方向指向我,将是巨大的。 任何帮助将不胜感激!