一、
1.1使用animated參數(shù),可以獲得正確的UIScrollViewDelegate的回調(diào);而使用UIView動畫則不能。
scrollViewDidScroll:
scrollViewDidEndScrollingAnimation:
1.2不使用animated參數(shù),只可以回調(diào)scrollViewDidScroll:
二、
2.1使用animated參數(shù),可以獲取到動畫過程中contentOffset的值。
eg:
[scrollView setContentOffset:CGPointMake(0, 100) animated:YES];
NSLog(@"%f", scrollView.contentOffset.y);//輸出:0.000000
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0.1 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
NSLog(@"%f", scrollView.contentOffset.y);//輸出:25.500000,每次輸出不保證一致
});
2.2不使用animated參數(shù),使用UIView動畫后,無論在什么時候查詢contentOffset的值,得到的都是動畫的最終值。
[UIView animateWithDuration:0.25
animations:^{
[scrollView setContentOffset:CGPointMake(0, 100)];
}];
NSLog(@"%f", scrollView.contentOffset.y);//輸出:100.000000