我正在尝试创建一个可水平滚动的 UIScrollView。 I am using this Ray Wenderlich tutorial .我有 ScrollView 出现并且工作正常,但目前在教程的“检测 ScrollView 之外的触摸”部分遇到了困难。
问题是我正在以编程方式创建所有内容。我对这部分教程代码(在 ScrollViewContainer.m 中)感到特别困惑:
- (UIView*)hitTestCGPoint)point withEventUIEvent*)event {
UIView *view = [super hitTest:point withEvent:event];
if (view == self) {
return _scrollView;
}
return view;
}
其中 _scrollView
是一个 IBOutlet(在 ScrollViewContainer.h 中):
@property (nonatomic, strong) IBOutlet UIScrollView *scrollView;
据我了解,_scrollView“连接”是通过 socket 在 Storyboard 上完成的。我应该如何以编程方式做到这一点?
通过使用此代码,我找到了我的触摸对象并隐藏了 View ,因此希望您可以通过一些技巧和修改相同的代码来修复它,只需传递您的 ScrollView 对象并在其中记录它是否被触摸。
#pragma mark
#pragma mark - Touch Events
-(void)touchesBeganNSSet *)touches withEventUIEvent *)event
{
UITouch *touch = [[event allTouches] anyObject];
CGPoint imgPop = [touch locationInView: _scrollView];
if ([_scrollView pointInside:imgPop withEvent:event])
{
NSLog(@"Touch Inside ScrollView");
} else {
NSLog(@"Touch Outside ScrollView");
}
}
如果您发现实现它有任何困难,请告诉我。
关于iphone - 以编程方式检测 ScrollView 外的触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19286583/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |