居中对齐子视图 UIview 在中心

Posted

技术标签:

【中文标题】居中对齐子视图 UIview 在中心【英文标题】:Centre align Subview UIview at the centre 【发布时间】:2016-05-29 10:11:40 【问题描述】:

我有以下基于故事板的设计,但有约束

我将此视图添加到主视图中,如下所示

 NSArray *nibContents = [[NSBundle mainBundle] loadNibNamed:@"CompanyFundView" owner:nil options:nil];
CompanyFundView *view = [nibContents lastObject];
UIWindow* mainWindow = [[UIApplication sharedApplication] keyWindow];
UIView *parent = mainWindow.subviews[0];

CGRect screenRect = [[UIScreen mainScreen] bounds];
CGFloat screenWidth = screenRect.size.width;
CGFloat screenHeight = screenRect.size.height;

view.frame = CGRectMake(0, 0, screenWidth, screenHeight);
[parent addSubview:view];

您可以看到视图没有出现在主视图中并且没有调整大小,我需要添加哪些其他约束?

【问题讨论】:

你在哪里添加视图? viewDidLoad? @BJHStudios 点击按钮 【参考方案1】:

确保在故事板场景中添加NSLayoutConstraint,宽度和高度设置为w:Any h:Any

我可以看到你正在使用w:Any Regular

约束是特定的,因此不会扩展。

在针对目标设备尺寸处理特定布局时使用特定场景尺寸

【讨论】:

以上是关于居中对齐子视图 UIview 在中心的主要内容,如果未能解决你的问题,请参考以下文章

尽管 Superview 的位置,但将 UIView 居中在 MainScreen 的中心

使对象居中,因此垂直约束总是均匀的

您如何将 UITextView 居中作为 UIView 的子视图?

更新 UIView 会产生子视图对齐/Swift 的散列

使用 Swift 以编程方式将 UIView 中的标签和图像居中对齐

在运行时和方向更改期间居中和 sizeToFit 子视图