Piy*_*ara 18 cocoa-touch objective-c uiscrollview ios
我已经UIScrollView加载了UIButtons并且UIButton我已经突出显示UIImage每个动作UIButton.
如果我没有设置delaysContentTouches,NO那么突出显示UIImage的UIButton将不会显示如果我UIButton非常快速地触摸.在我设置delaysContentTouches属性NO后,只UIButton显示突出UIImage显示.
现在将delaysContentTouches属性设置为NO为UIScrollView.我不能通过UIScrollView拖动来滚动我UIButtons.现在我该如何解决这个问题.
请给我一个建议.
提前致谢.
Chr*_*ris 35
这对我有用.子类UIScrollView,并只实现此方法:
- (BOOL)touchesShouldCancelInContentView:(UIView *)view {
return YES;
}
Run Code Online (Sandbox Code Playgroud)
然后设置 delaysContentTouches = NO;
瞧!像主屏幕一样工作:立即突出显示按钮,但仍允许滚动:)
lif*_*joy 10
我发现在iOS 8中,UIScrollView的底层UIPanGestureRecognizer不尊重UIScrollView的delaysContentTouches属性.我认为这是iOS 8的错误.这是我的解决方法:
theScrollView.panGestureRecognizer.delaysTouchesBegan = theScrollView.delaysContentTouches
Run Code Online (Sandbox Code Playgroud)
好的我通过实现以下方法解决了:
- (BOOL)touchesShouldCancelInContentView:(UIView *)view
{
NSLog(@"touchesShouldCancelInContentView");
if ([view isKindOfClass:[UIButton class]])
return NO;
else
return YES;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14068 次 |
| 最近记录: |