添加约束滚动后不起作用

时间:2014-09-06 12:54:22

标签: ios ios7

我正在尝试使用中心约束在滚动视图中添加按钮, 约束工作但滚动不工作滚动卡住, 任何人都可以帮我错误,

-(void)viewDidLoad{
scrllview = [[UIScrollView alloc] initWithFrame:
                 [[UIScreen mainScreen] applicationFrame]];
    scrllview.backgroundColor = [UIColor orangeColor];
    self.view=scrllview;
    [scrllview setContentSize:CGSizeMake(300, 1000)];


    submitButton = [UIButton buttonWithType:UIButtonTypeCustom];
    [submitButton setTitle:@"connect" forState:UIControlStateNormal];
    [submitButton.titleLabel setFont:[UIFont fontWithName:@"HelveticaNeue-Bold" size:14.0]];
    [submitButton addTarget:self
                     action:@selector(myMethod:)
           forControlEvents:UIControlEventTouchUpInside];
    submitButton.backgroundColor = [UIColor blackColor];
    submitButton.translatesAutoresizingMaskIntoConstraints = NO ;
    [scrllview addSubview:submitButton];

    NSLayoutConstraint *constraint = [NSLayoutConstraint
                                      constraintWithItem:submitButton
                                      attribute:NSLayoutAttributeCenterX
                                      relatedBy:NSLayoutRelationEqual
                                      toItem:scrllview
                                      attribute:NSLayoutAttributeCenterX
                                      multiplier:1.0f
                                      constant:0.0f];

    [scrllview addConstraint:constraint];

    constraint = [NSLayoutConstraint
                  constraintWithItem:submitButton
                  attribute:NSLayoutAttributeCenterY
                  relatedBy:NSLayoutRelationEqual
                  toItem:scrllview
                  attribute:NSLayoutAttributeCenterY
                  multiplier:1.0f
                  constant:0.0f];

    [scrllview addConstraint:constraint];
}

1 个答案:

答案 0 :(得分:1)

当您使用带有自动布局的scrollview时,不应使用contentsize。

您可以在滚动视图中创建一个视图,该视图应具有相对于scrollview所需的高度和约束。您可以在该视图中添加按钮。

它会起作用。我用xib实现了它。在scrollview中直接添加控件时出现同样的问题。我在scrollview中使用了view并添加了所需的控件来查看。

Auto layout UIScrollView with subviews with dynamic heights