我注意到我的应用程序出现了一个奇怪的问题,它只在iPhone 3G和iPhone 3GS上出现。我正在创建一个有两个页面的滚动视图。在滚动的第二页上,当您尝试滚动选取器时,它完全没有响应。我的应用程序似乎不能区分选择器的滚动和滚动视图的滚动,因为有时你向上滚动,它会向左移动。
请记住,这在iPhone 4和iPhone 4S上效果很好。
以前有没有人遇到过这个问题,或者知道到底是怎么回事?
发布于 2012-04-24 07:33:36
显然,如果UIScrollView和UIPickerView一起使用,会产生问题。然而,这只发生在iPhone 3和iPhone 3GS上。
解决方案是将UIScrollView子类化并实现以下方法。
- (UIView *)hitTest:(CGPoint)point
withEvent:(UIEvent *)event
{
UIView *result = [super hitTest:point withEvent:event];
if ([result.superview isKindOfClass:[UIPickerView class]]) {
self.canCancelContentTouches = NO;
self.delaysContentTouches = NO;
}
else {
self.canCancelContentTouches = YES;
self.delaysContentTouches = YES;
}
return result;
}发布于 2012-04-23 23:23:17
您应该只在构建设置中启用armv7 (而不是armv6),仅此而已
发布于 2012-04-23 23:24:26
在滚动视图上添加UIView,在UIView上添加UIPickerView。
https://stackoverflow.com/questions/10283220
复制相似问题