滚动时的UIScrollview位移
问题描述:
当用户滚动时,我正在寻找UIScrollView的位移,每当它滚动时就需要位移。使用这种方法滚动时的UIScrollview位移
-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView
withVelocity:(CGPoint)velocity
targetContentOffset:(inout CGPoint *)targetContentOffset{
NSLog(@"VELOCITY :- %f , %f",velocity.x,velocity.y);
NSLog(@"inout offset: %@ ",targetContentOffset);
}
我可以得到速度,但仍需要知道在一个方向上的实际距离,使位移计算正确。
感谢,
答
的contentOffset
属性会给你这一点。在上述方法targetContentOffset
会给你减速和停止后的结束偏移量。通常,上述方法用于改变您希望的结束偏移量。其他拖动或滚动委托方法也可以与scrollView.contentOffset
一起使用来计算位移。
contentOffset.x & contentOffset.y
将分别给您在x方向上的位移x &。
但仍然存在一些问题....因为精确位移没有显示......我放大了比例: - 2.0然后记录位移和我需要根据滚动位移移动的标记是按比例: - 1.0。现在我已经分解了disp/2,但是有一些问题,它是所有位移的总和,因为contentOffset.x&contentOffset.y的值非常高。 – Sumitiscreative 2013-02-21 08:17:12
查看此问题的接受答案。这将给你contentOffset计算后缩放: http://stackoverflow.com/questions/3954757/uiscrollview-content-offset-calculation-after-zoom – Rakesh 2013-02-21 08:33:25
是的,我能够得到这一点在我自己的,但实际上问题是仍然存在,这里是: - NSLog(@“offset: - %f,%f”,scrollView.contentOffset.x,scrollView.contentOffset.y); // NSLog(@“offset 2: - %@”,&targetContentOffset); NSLog(@“rect的旧位置:%f,%f”,newRect.center.x,newRect.center.y); (newRect.center.x +(scrollView.contentOffset.x)/ 2, newRect.center.y +(scrollView.contentOffset.y)/ 2); (@“rect的新位置:%f,%f”,newRect.center.x,newRect.center.y);'代码' – Sumitiscreative 2013-02-21 09:59:13