自定义uitableviewcell中的uiscrollview

时间:2013-08-16 19:04:32

标签: ios uitableview uiscrollview

我已经构建了自定义UITableViewCell“customCell”, 在它里面只有UIScrollView“scrollView”和scrollView:有2个子视图

在customCell类中 我把这样的代码设置为scrollView的contentSize

(void)layoutSubviews{
    self.scrollView.contentSize = CGSizeMake(480, 120);
}

调用代码并且contentSize正常工作,但是 有一些东西可以将self.scrollView的contentSize重新更改为默认值我认为这是因为约束

我试图在这些方法中更改contentSize,但没有一个能解决问题

-(void)awakeFromNib
-(void)buildCell // this method get called from tableView method - tableView:cellForRowAtIndexPath:

我应该设置我的scrollView ???的内容大小

- 的 更新

这是奇怪的行为: 当我向下滚动表格视图时,方法layoutSubviews将再次被调用,但这次contentSize将保持它的新值并且不会被覆盖或更改

- 更新2:

当我从storyBoard文件中删除autoLayout时,一切正常......:s
\如何在不删除autoLayout的情况下解决问题

2 个答案:

答案 0 :(得分:0)

如果您正在使用故事板,我的猜测是去使用

initWithCoder:(NSCoder *)coder;

此方法在viewDidLoad之后被调用,它可能与此有关。

这很奇怪,我会正常评论以保持讨论,但50声望不会让我

答案 1 :(得分:0)

最佳解决方案:

  • 在storyBoard中删除了scrollView的所有子视图
  • -(void)awakeFromNib我创建了所有视图并以编程方式将它们添加到scrollView

现在每件事情都很完美