只想使用自动布局调整中间视图的大小
Posted
技术标签:
【中文标题】只想使用自动布局调整中间视图的大小【英文标题】:Want only to resize middle view using auto layout 【发布时间】:2014-09-29 22:28:09 【问题描述】:我在 Xcode 6 中使用自动布局来设置这个笔尖。唯一不能正常工作的屏幕尺寸是 3.5 英寸。
这个视图作为子视图添加到我的主视图控制器的视图中。主视图控制器在添加子视图之前,如果检测到 3.5" 设备,将更改其视图的框架高度以匹配 3.5" 屏幕。
我喜欢中间部分 - 集合视图背景图像视图和集合视图来调整它们的高度,以便在 3.5 英寸屏幕上显示时,顶部工具栏和底部横幅视图和按钮始终在屏幕上可见。大白色活动指示器将始终位于 Collection 视图的中心。
但是当这个视图显示在 3.5" 屏幕上时,底部的横幅视图和按钮根本不显示。屏幕底部在横幅视图上方的某处结束。
我尝试了很多次限制和阻力优先级,但没有任何效果。
我应该怎么做才能解决这个问题?
提前致谢!
【问题讨论】:
【参考方案1】:我改变了我的实施方式。我使用自动布局来设置顶部工具栏和底部视图。
我以编程方式创建中间集合视图背景图像和集合视图。背景图像和集合视图的高度由
计算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];
【讨论】:
以上是关于只想使用自动布局调整中间视图的大小的主要内容,如果未能解决你的问题,请参考以下文章