ios - 为什么这个 View 会神奇地改变大小?

标签 ios objective-c cocoa-touch

我有一个带有 tableFooterView 的 tableView。

在 viewDidload 上:

 <UIView: 0x6c87a70; frame = (0 325; 320 3); autoresize = TM+BM; layer = <CALayer: 0x6c87aa0>>
  <UIImageView: 0x6c87b60; frame = (31 0; 257 3); autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0x6c87ba0>> - table_pull_refresh_footer.png

在 viewWillLayoutSubviews 上我看到的是

<UIView: 0x6c87a70; frame = (0 325; 320 3); autoresize = TM+BM; layer = <CALayer: 0x6c87aa0>>
 <UIImageView: 0x6c87b60; frame = (31 0; 320 3); autoresize = W+H; userInteractionEnabled = NO; layer = <CALayer: 0x6c87ba0>> - table_pull_refresh_footer.png

那么为什么UIImageView突然变大了呢? parentView 根本不会改变大小。还是 320 3。

最佳答案

问题正如vikingosgundo所说。

我应该先调用[super viewWillLayoutSubviews]

关于ios - 为什么这个 View 会神奇地改变大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15720908/

相关文章:

ios - 添加一个 subview (在 xib 中创建)到 UIView

ios - 快速发送ui数据

iphone - 剖面 TableView 动画

objective-c - 接口(interface)实现中静态变量的含义是什么?

ios - __block 没有 block 的存储类型?

ios - 我有一个可以在多个线程上访问的单例,它的每个数组都应该有一个单独的调度队列吗?

iPhone内存泄漏,不知道为什么Instruments工具这么认为

ios - 以编程方式将 iPhone 静音开/关。 (强制静音/取消静音)

iphone - Objective C 中 Bool 的值

java - kCFStreamPropertySocketSecurityLevel 到 kCFStreamSocketSecurityLevelNegotiatedSSL 导致 OSStatus errSSLXCertChainInvalid (-9807) 连接到 Java