Oli*_*ver 3 iphone scroll freeze uidatepicker uiscrollview
我在UIScrollView中有一个UIDatePicker.但UIDatePicker不响应滚动触摸.这是滚动的滚动视图.在网上阅读一些文档,我将"延迟内容触摸"设置为NO,现在我看到日期选择器开始轻微滚动,但它仍然是滚动视图,它取得了最后的结果.我在屏幕上有一些用户可以触摸以滚动视图的位置.那么我怎样才能将两种卷轴分开并使日期选择器以正常方式滚动?
谢谢您的帮助
使用该帖子解决:http: //www.alexc.me/uiscrollview-and-uidatepicker/153/
只需在其中包含该代码的类:
UIScrollViewBreaker.h
@interface UIScrollViewBreaker : UIScrollView {
}
- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view;
- (BOOL)touchesShouldCancelInContentView:(UIView *)view;
@end
Run Code Online (Sandbox Code Playgroud)
UIScrollViewBreaker.m
@implementation UIScrollViewBreaker
- (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view {
if ([view isKindOfClass:[UIDatePicker class]] || [@"UIPickerTable" isEqualToString:[[view class] description]] ) {
//|| [view isKindOfClass:[UIPicker class]]
return YES;
}
return [super touchesShouldBegin:touches withEvent:event inContentView:view];
}
- (BOOL)touchesShouldCancelInContentView:(UIView *)view {
if ([view isKindOfClass:[UIDatePicker class]] || [@"UIPickerTable" isEqualToString:[[view class] description]] ) {
return NO;
}
return [super touchesShouldCancelInContentView:view];
}
@end
Run Code Online (Sandbox Code Playgroud)
在IB中,将UIScrollView的类设置为UIScrollViewBreaker.
它已经完成了.
只是不要忘记让视图中的某个位置让用户让他滚动滚动视图.