我已将UIScrollView委托实现为:
- (void) scrollViewDidScroll: (UIScrollView *) scrollView {
CGRect bounds = scrollView.bounds ;
CGPoint scrollLoc = scrollView.contentOffset ;
NSLog(@"bounds: %@ offset:%@"
, NSStringFromCGRect(bounds)
, NSStringFromCGPoint(scrollLoc)) ;
}
无论我做什么,滚动或旋转设备,似乎contentOffset
和bounds.origin
始终相同。
为什么我们需要一个contentOffset,如果它与bounds origin相同,或者当两者实际上不同时会是什么情况?
答案 0 :(得分:8)
根据docs:
contentOffset属性始终是当前位置 滚动边界的左上角,是否正在滚动 或不。
答案 1 :(得分:1)
在两种情况下,视图都位于同一位置,但如果您使用ContentOffset,则内容可能会在视图中移动。
您将在第9集的图像视图中找到有用的信息......斯坦福大学系列:
http://itunes.apple.com/fr/itunes-u/developing-apps-for-ios-hd/id395605774
答案 2 :(得分:0)
据我所知,他们都提供相同的信息,一个是宽度和高度的矩形,另一个是原点。