如何以编程方式将自动布局约束添加到UINavigationBar

时间:2015-09-02 10:22:58

标签: ios

UINavigationBar假设出现在视图控制器的顶部。它没有出现。我在视图中添加约束。

代码:

  navBar=[[UINavigationBar alloc]init];
  [self.view addConstraint:[NSLayoutConstraint constraintWithItem:self.view  attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:navBar attribute:NSLayoutAttributeNotAnAttribute multiplier:1.0 constant:10]];

  [navBar setBackgroundColor:[UIColor blueColor]];

  [views addSubview:navBar];

添加约束有什么问题吗?

1 个答案:

答案 0 :(得分:-1)

您可以以编程方式为UINavgationBar设置布局约束,您设置的约束不正确。

你设置:

self.view.top = navBar.NotAnAttribute * 1.0(乘数)+ 10.0(常数)

在我看来,这应该是:

self.view.top = navBar.top * 1.0 + 10.0

因此:

[self.view addConstraint:[NSLayoutConstraint constraintWithItem:self.view  attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:navBar attribute:NSLayoutAttributeTop multiplier:1.0 constant:10]];

应该有用。