私はdirectionalLockEnabled = YESのプレーンなscrollViewを持っています
一方向(Xとする)にスクロールしようとすると、X座標では常にほぼ正しい結果が得られますが、Yでは奇妙なオフセットが得られます。
これが私のデリゲートメソッドです:
- (void)scrollViewWillEndDragging:(UIScrollView *)aScrollView withVelocity:(CGPoint)velocity
targetContentOffset:(inout CGPoint *)targetContentOffset
{
NSLog(@"current end: %f %f", _scrollView.contentOffset.x, _scrollView.contentOffset.y);
NSLog(@"velocity: %f %f", velocity.x, velocity.y);
NSLog(@"will end: %f %f", targetContentOffset->x, targetContentOffset->y);
}
そして、これが結果です:
2013-08-06 10:46:59.310 TestScroll[999:c07] current end: 255.000000 778.000000
2013-08-06 10:46:59.312 TestScroll[999:c07] velocity: 0.533821 -0.000000
2013-08-06 10:46:59.312 TestScroll[999:c07] will end: 517.000000 773.000000
ご覧のとおり、現在のオフセットは 778 で、速度は 0 です。では、ビューがコンテンツ オフセット 773 で停止するのはどうしてでしょうか。
6.1 iPad および 5.0、6.1 シミュレーターで確認