只想使用自动布局调整中间视图的大小

时间:2014-09-29 22:28:09

标签: ios autolayout xcode6

我在Xcode 6中使用autolayout来设置这个笔尖。唯一不适用的屏幕尺寸是3.5“。

此视图作为子视图添加到我的主视图控制器视图中。在添加子视图之前,主视图控制器将更改其视图的帧高度,以便在检测到3.5“设备时匹配3.5”屏幕。

我喜欢中间部分 - 收藏视图背景图像视图&收集视图以调整其高度,以便顶部工具栏和底部横幅视图&当在3.5英寸屏幕上显示时,按钮始终在屏幕上可见。大白活动指示器将始终在集合视图中居中。

但是当这个视图显示在3.5英寸的屏幕上时,底部的横幅视图和按钮根本不显示。屏幕的底部在横幅视图上方的某处结束。

我多次尝试使用约束和阻力优先级,但没有任何效果。

我该怎么做才能解决这个问题?

提前致谢!

view layout

1 个答案:

答案 0 :(得分:0)

我改变了我的实施方式。我使用autolayout设置顶部工具栏和底部视图。

我以编程方式创建中间集合视图背景图像和集合视图。背景图像和集合视图的高度由

计算
CGFloat collectionViewBackgroundImageHeight = [UIScreen mainScreen].bounds.size.height - _toolbarBackgroundImage.bounds.size.height - _aimBannerImageView.bounds.size.height;

CGFloat collectionViewHeight = collectionViewBackgroundImageHeight - 4;

另外,我添加以下内容以使xib与其父级的帧匹配。

-(void)viewWillAppear:(BOOL)animated
{
     if (is3Point5InchScreen) {
          self.view.frame = CGRectMake(0, 0, 320, 480);
     }
     [super viewWillAppear:animated];
}