1

我在一个视图控制器上有两个 UITableViews(视图控制器是他们的代表)。其中之一将取决于 scrollViewWillEndDragging:withVelocity:targetContentOffset: (我想做某种自定义分页)。另一个将 pagingEnabled 属性设置为 YES,当我第一次尝试滚动它时,XCode 给了我警告

2012-09-07 16:46:39.672 test[17393:707] Stop offset can not be modified for paging scroll views

即使该方法的代码目前是:

-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
{
    return;
}

当我删除方法 scrollViewWillEndDragging:withVelocity:targetContentOffset: 一切似乎都很好。我是否需要尝试制作另一个委托(没有该方法)并使用分页委托制作 UITableView,还是我不应该担心?

4

2 回答 2

6

您在控制台中看到此警告的原因是,scrollViewWillEndDragging:withVelocity:targetContentOffset:当滚动视图启用分页时,该方法无效。该文档说明了以下内容。

当滚动视图的 pagingEnabled 属性值为 YES 时,不会调用此方法。

换句话说,Xcode 会给你一个警告,但是,正如@tiguero 所指出的,最好在每个委托方法中检查哪个表视图(滚动视图)正在发送委托消息。

至于警告,您可以忽略此警告,因为您的控制器是两个表视图的代表,其中一个启用了分页。

于 2013-01-29T18:33:13.010 回答
0

我对您在这里要实现的目标感到有些困惑。不过,如果您有相同的视图控制器作为两个 UITableView 的委托,我建议您实现这些委托方法,并通过检查委托方法的参数中传递的 scrollView 变量来检查您正在处理的滚动视图。

于 2012-09-07T20:04:53.080 回答