I am trying to add a button just above the bottom of my view. I am adding the autolayout constraints programatically, and here is my code.
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"height : %f", self.view.bounds.size.height);
[self.view addConstraints:
[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-(>=topSpace)-[button1]"
options:0
metrics:@{@"topSpace":@(self.view.bounds.size.height*0.9f)}
views:@{@"button1" : self.button1}]];
// Do any additional setup after loading the view, typically from a nib.
}
The result of this code is shown in the image the button is certainly not in the bottom of the superview. Also i am getting the following warnings when i run my program.
2014-06-01 22:02:19.144 AutoLayout[2886:60b] Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the unwanted constraint or constraints and fix it. (Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSIBPrototypingLayoutConstraint:0x8d40590 'IB auto generated at build time for view with fixed frame' V:|-(269)-[UIButton:0x8d815c0] (Names: '|':UIView:0x8d82360 )>",
"<NSLayoutConstraint:0x8c34f60 V:|-(>=432)-[UIButton:0x8d815c0] (Names: '|':UIView:0x8d82360 )>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x8c34f60 V:|-(>=432)-[UIButton:0x8d815c0] (Names: '|':UIView:0x8d82360 )>
Break on objc_exception_throw to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKit/UIView.h> may also be helpful.
Any help on these two issues.