使用Autolayout时,UIScrollView内容不显示完整内容?

时间:2014-04-28 10:05:05

标签: ios objective-c uiview uiscrollview

我有一个带有许多UIView的scrollView。这些UIViews的部分是在故事板中设计的,并且在代码中休息。所以我的自动布局约束在代码和故事板中。现在,故事板中应用约束的视图显示得很好,即滚动view的内容大小正确显示它们。但是对于在代码中设计的UIViews,滚动视图的内容大小不会更新。

这就是我设置滚动视图的内容大小的方法。

  -(void)setScrollViewContentSize{
//scroll view content size according to no of views.

CGRect contentRect = CGRectZero;
for (UIView *obj in self.eventScrollView.subviews) {
    contentRect = CGRectUnion(contentRect, obj.frame);
}
self.eventScrollView.contentSize = contentRect.size;

}

我在代码中应用如下约束。

 UIView *submitView = [[UIView alloc]initWithFrame:CGRectMake(6, 1051, 308, 30)];
    // set autolayout
submitView.translatesAutoresizingMaskIntoConstraints = NO;

[submitView addConstraint:[NSLayoutConstraint constraintWithItem:submitView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:submitView.frame.size.height]];

[submitView addConstraint:[NSLayoutConstraint constraintWithItem:submitView attribute:NSLayoutAttributeWidth  relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0f constant:submitView.frame.size.width]];

 [self.eventScrollView addSubview:submitView];

0 个答案:

没有答案