gpt4 book ai didi

objective-c - 解释awakeFromNib和initwithFrame : usage

转载 作者:太空狗 更新时间:2023-10-30 03:39:27 26 4
gpt4 key购买 nike

我正在 iTunes 上学习斯坦福大学 iPhone 开发讲座,并在第 5 课中遇到了这个问题。

我们正在努力确保在设备旋转时进行重绘。我有两个与此相关的问题:

  1. 什么是awakeFromNib?其余代码中没有调用此方法。它是如何触发的?
  2. initwithFrame: 中的代码是做什么的?

.

-(void)setup 
{
self.contentMode = UIViewContentModeRedraw;
}

-(void)awakeFromNib
{
[self setup];
}

-(id)initWithFrame:(CGRect)frame
{
self=[super initWithFrame:frame];
if (self) {
[self setup];
}
return self;
}

最佳答案

awakeFromNibNSBundle 完成加载您的 Nib 时调用。

在初始化 View 时,您的代码实际上有两种不同的代码路径,具体取决于它是从 nib 加载还是在运行时创建。

  • 如果它是从 nib 加载的,部分加载将通过调用 initWithCoder: 对其进行初始化,随后在所有 outlet 之后调用 awakeFromNib已连接。

  • 如果您以编程方式创建 View ,则使用 initWithFrame: 对其进行初始化(并且永远不会调用 awakeFromNib,因为它不是从 nib 加载的) .

关于objective-c - 解释awakeFromNib和initwithFrame : usage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8451900/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com