我在一个视图控制器上有两个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,或者我只是不需要担心?
发布于 2013-01-30 02:33:13
您在控制台中看到此警告的原因是,当滚动视图启用分页时,方法scrollViewWillEndDragging:withVelocity:targetContentOffset:不起作用。文档说明如下。
当滚动视图的pagingEnabled属性的值为YES时,不调用此方法。
换句话说,Xcode会给您一个警告,但是,正如@tiguero所指出的,最好在每个委托方法中检查哪个表视图(滚动视图)正在发送委托消息。
至于警告,您可以忽略此警告,因为您的控制器是两个表视图的代理,其中一个表视图启用了分页。
发布于 2012-09-08 04:04:53
我对您在这里想要实现的目标感到有点困惑。然而,如果您有相同的视图控制器作为两个UITableViews的委托,我建议您实现这些委托方法,并通过检查传递到委托方法的参数中的scrollView变量来检查您正在处理的是哪个scrollView。
https://stackoverflow.com/questions/12320460
复制相似问题