2

UIScrollViewDelegate有一个很棒的新方法:

// called on finger up if the user dragged. velocity is in points/second. targetContentOffset may be changed to adjust where the scroll view comes to rest. not called when pagingEnabled is YES
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView 
                     withVelocity:(CGPoint)velocity 
              targetContentOffset:(inout CGPoint *)targetContentOffset __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_5_0)

但是,这仅在 iOS 5 中可用。对于没有这种方法的 iOS,我想使用分页作为替代方法。所以我有两个选择:

  1. 检查iOS版本,我不知道怎么做,或者
  2. 检查是否为UIScrollViewDelegate协议定义了此方法,我也不知道该怎么做

我宁愿以某种方式检查协议中是否定义了该方法,而不是检查 iOS 版本。请注意,进行respondsToSelector:检查是不够的,因为我的实现协议的类将始终定义它。

4

1 回答 1

4
BOOL isAtLeastIOS5 = [[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0;

请参阅如何测试方法的协议?测试给定方法的协议。

于 2011-11-08T16:50:08.527 回答