UIScrollivew约束更改还重新加载内容?

时间:2015-04-16 20:56:34

标签: ios objective-c uiscrollview ios-autolayout

我有一个包含4个tableview的水平UIScrollview。当用户在tableview中选择一行时,我添加一个标签并通过更改约束来更改scrollview的大小。但是,在滚动视图大小更改后,无论用户在哪个tableview上,都会重新加载scrollview并显示第一个tableview。然后就会崩溃。调试之后,我发现原因是旧的tableview数据少于第一个,显示它在cellForRowAtIndexPath中因为数组绑定错误而崩溃。 我的问题是为什么scrollview会重新加载以及如何在不重新加载内容的情况下改变大小?

// change to the new constrant 
  [self.contentViewConstraint setConstant:height];
  [self.view layoutIfNeeded];

// crash here in cellForRowAtIndex
// reason: index 4 out of bound .... (the current table view has only 3 object while the first tableview has a lot)
  [result fillWithSocialFriend:[self.friends friendAtIndex:indexPath.row]];

0 个答案:

没有答案