我在故事板上手动添加了一个按钮。我希望当屏幕加载时,按此按钮设置其中心,并通过
给出的协调-(void)viewWillLayoutSubviews{
NSLog(@"Will Layout");
CGPoint buttonPoint;
buttonPoint.y = self.view.frame.size.height - 50;
buttonPoint.x = self.view.frame.size.width /2;
[menuButton setCenter:buttonPoint];
}
但没有任何变化,按钮仍停留在我第一次拖动它的位置。 我做错了什么?
答案 0 :(得分:1)
对于现代AutoLayout和旧的基于Springs& Struts的布局管理方法而言,它非常简单。
<强>自动版式强>
您只需设置两个约束,使按钮保持水平中间和垂直中间减去50个点。
SPRINGS&amp; STRUTS 强>
通过在“尺寸”检查器中正确设置自动调整蒙版,可以确保按钮设置在中心。然后在代码中,在视图控制器的viewDidLoad
方法中,您将修复50点偏移。
(有些人可能建议使用viewWillLayoutSubviews,但现在不要让它复杂化。)
- (void)viewDidLoad
{
[super viewDidLoad];
self.button.frame = CGRectMake(self.button.frame.origin.x,
self.button.frame.origin.y - 50,
self.button.frame.size.width,
self.button.frame.size.height);
/// other code....
}