在显示之前从 nib 实体获取尺寸
Posted
技术标签:
【中文标题】在显示之前从 nib 实体获取尺寸【英文标题】:Getting dimensions from nib entities before they are displayed 【发布时间】:2014-05-07 19:49:43 【问题描述】:我有一个 nib 文件,我在其中创建了一个 NSView
。
这个视图有两种状态。如果它是“关闭”,那么只有顶部的一些项目是可见的。如果它是“开”,那么整个视图都是可见的(披露三角形的东西)。
现在,我目前对显示 rect 进行了硬编码(使用 static const
)。但是,我希望能够更换笔尖,而不必去调整任何幻数。
足够简单。我只是获取了一些 nib 元素的 frame 属性,而 Bob 是你的叔叔。
我需要在显示视图之前获取这些尺寸。它已实例化,但在显示之前将 CGRectZero
作为所有内容的框架。
是否有一种“正确”的方法可以从已加载(但未显示)的 nib 中提取 nib 项目的代码中的尺寸?
【问题讨论】:
你看过awakeFromNib
吗?
明天我得再搞点这个了。我正在使用自动布局,它看起来有点像 awakeFromNib 没有应用 AL,因为我得到了一些非常奇怪的尺寸。
成功了,谢谢!随意发布一个解决方案,所以我可以给你一个漂亮的绿色复选标记!
【参考方案1】:
你需要查看awakeFromNib
方法,该方法是在nib加载后调用的,这样你就可以在视图显示之前对其进行配置。
【讨论】:
以上是关于在显示之前从 nib 实体获取尺寸的主要内容,如果未能解决你的问题,请参考以下文章