我有一个自动布局的UITableView,当GADBannerView出现在屏幕底部时,我需要降低高度.

不幸的是,使用自动布局无法修改框架.解决方案是删除自动布局并手动设置框架.这是非常危险的,因为我所有的应用程序在3.5英寸和4.0英寸的屏幕上都可以正常工作,删除自动布局会增加一个新的测试阶段和更多的工作量.

即使启用了自动布局,是否有办法更改框架?

推荐答案

将底部布局的UITableView个约束设置为0,使其成为IBOutlet.现在,让你的GADBannerView高度为40,所以改变你的outlet.constant = 40;,以了解更多关于如何使IBOutlet和改变其值,看看thisthis希望这将有所帮助.

Edit:例如,对于那些寻求帮助的人,请遵循以下简单步骤(因为这是公认的答案,我认为值得举个例子.这个例子归功于@manujmv)

  1. 在界面中为视图创建高度约束.

  2. 然后在类中为该约束添加一个IBOutlet对象.

    @属性(弱,非原子)IBNSLayoutConstraint

在连接面板中连接此对象.

  1. 然后在需要时更改此约束的值

    自己高度限制.常数=40;

Objective-c相关问答推荐

Objective-C struct 的默认值以及如何测试

viewWillAppear,viewDidAppear 没有被调用,没有触发

iOS9 - 这个应用程序正在从后台线程修改自动布局引擎 - 在哪里?

应用程序终止时处理推送通知

将谷歌 map 添加为子视图会使 iOS 应用程序因 exc_bad 崩溃

iOS 7 / Xcode 5:以编程方式访问设备启动图像

定义缓存变量时在objective-c中使用static关键字

目标 C:在不离开应用程序的情况下发送Electron邮件

如何获取 AppIcon 的 UIImage?

Objective C const NSString * vs NSString * const

更改 UIBarButtonItem 的 Tint colored颜色

iOS 5 不允许将下载的数据存储在 Documents 目录中?

如何确定 UICollectionView flowLayout 中单元格之间的间距

从 URL Objective C 获取图像

目标覆盖 FRAMEWORK_SEARCH_PATHS 构建设置

为什么使用弱指针进行委托?

如何在今天午夜获取 NSDate 对象?

UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效?

Objective-C:如何向 NSURL 添加查询参数?

如何在 Objective-c 中将数组声明为常量?