更改UIScrollVIew内容插入触发scrollViewDidScroll

时间:2015-03-31 08:45:03

标签: ios objective-c uiscrollview

我使用以下代码为contentInset设置tableView

self.scrollView.contentInset = UIEdgeInsetsMake(109, 0, 44, 0);

但这会触发UIScrollView委托方法scrollViewDidScroll:

这是预期的行为吗?如果是这样,有没有办法解决这种情况?
提前谢谢。

2 个答案:

答案 0 :(得分:4)

您可以在设置内容插入之前尝试删除滚动视图委托。然后重新申请代表。

id scrollDelegate = scrollView.delegate;
scrollView.delegate = nil;
scrollView.contentInset = UIEdgeInsetsMake(109, 0, 44, 0);
scrollView.delegate = scrollDelegate;

答案 1 :(得分:0)

只需使用变量来检查是否要在触发 scrollViewDidScroll 时采取措施。然后在 scrollViewDidScroll 中检查此变量并相应地应用您的操作。它是我唯一的解决方案。要跳过此变量时,请将其设置为true或false。