问题标签 [awakefromnib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
314 浏览

objective-c - 重复的 NSLog 条目

我不知道我是否可以在此处包含与我的项目相关的代码,因为我的项目如此之大,但是是否有任何典型原因NSLog会重复一些警告并在仅发生一个调用/错误的情况下对其进行调用?

例如,我有一个子类,它在以下位置NSBox初始化另一个类的实例awakeFromNib

NSLog打印了两次“init ok”。我不明白为什么这个子类会在我的项目中的任何地方被“唤醒”两次。nil这是一个更大问题的一部分,除了从我创建实例的类之外,我无法让变量返回任何内容。我想知道双值是否与它有关。

0 投票
4 回答
17861 浏览

iphone - viewDidLoad 和 awakeFromNib 计时

我的理解是 awakeFromNib 总是在 viewDidLoad 之前被调用。

所以我有一个 UITableViewController 的子类,它不是从 xib 文件中归档的。

我在里面定义了这两种方法:

发生的事情是在控制台中的“从笔尖唤醒”之前显示“视图确实加载”。我尝试在 [super awakeFromNib] 处使用断点,并反复按 F7(Step Into),令我惊讶的是,它在进入 awakeFromNib 内的第二行之前进入了 -(void)viewDidLoad。

有谁知道这里发生了什么?我在常规 UIViewController 的子类中做了完全相同的事情,并且日志语句被颠倒了,正如我最初预期的那样......

0 投票
2 回答
5754 浏览

ios - UIKit:以编程方式调用 awakeFromNib?

我看到了这段代码:

CoolButton子类UIButtonawakeFromNib以编程方式调用可以吗?

-[CoolButton awakeFromNib]如果我想做与我想以编程方式而不是从 nib 文件创建对象的时间相同的事情,那么最好的方法是什么?

我应该只定义一个方法并在-[CoolButton awakeFromNib]and中调用它-[CoolButton initWithFrame]吗?或者,是否有另一种我应该定义的初始化方法在这两种情况下都被调用:是我以CoolButton编程方式创建还是从 nib 文件创建?

0 投票
1 回答
4435 浏览

ios - awakeFromNib 的好处?

我一直在通过基于 xcode 导航控制器模板制作许多简单的测试应用程序来学习 coredata,并选中“使用 coredata”。

App 委托中的 awakeFromNib 方法一直是我的问题来源,因为我正在向控制器添加其他视图并更改加载顺序,因此 RootViewController 可能是第二或第三选择。

我已经弄清楚 awakeFromNib 在做什么,并且我已经将其删除,因此应用程序委托不再与任何特定视图相关联。(所以当我确实想加载 RootViewController 时,我会将其加载为常规视图,并使用它自己的 viewDidLoad 来初始化视图的 managedObjectContext)。

我的问题:在 AppDelegate 中使用 awakeFromNIb 是否有性能提升或其他好处?还是只是另一种做同样事情的方式,就像我从 viewDidLoad 方法做的一样?

0 投票
4 回答
15949 浏览

ios - IBOutlet 未在 awakeFromNib 中连接

此处链接的示例代码效果很好,并允许 UIScrollView 显示图像,并在当前图像之前和之后显示图像的分页和预览:

我试图将示例封装在一个可以重用的控件中。所以我创建了一个 PagingScrollView:

简单的实现

在 PagingScrollView.xib 中,我放置了一个包含 UIScrollView 和 ARScrollViewEnhancer 的视图,与原始 ScrollViewPagingExampleViewController xib 完全相同。它的 File's Owner 的类设置为 PagingScrollView,它的 scrollView 出口设置为子 UIScrollView。

在 ScrollViewPagingExampleViewController 中,我简单地声明:

在 IB 中,我拖动一个 View,将其类设置为 PagingScrollView,并将其 pagingScrollView 出口连接到 PagingScrollView。

在 awakeFromNib 中,scrollView 属性为 nil。我认为由于 scrollView 在同一个 nib 中连接到 IB 中,因此此时可以使用它。

令人困惑的是,在 ScrollViewPagingExampleViewController.xib 中,有一个名为 scrollView 的空插座。这可能表明 PagingScrollView 的实例与 PagingScrollView.xib 中定义的实例不同。

结果,我无法使用实际的子视图填充 UIScrollView。我在这里做错了什么?

0 投票
2 回答
354 浏览

xcode - 重构应用程序委托

我是 Obj-C 和 Xcode 4 的初学者,我目前正在Mac Dev 网站上浏览“你的第一个 Mac 应用程序” 。我已经设法完成了主要部分,但我在“重构应用程序委托”部分中苦苦挣扎。

我创建了一个新类(用作控制器),向这个新类添加了一个对象集,将类连接到滑块、静音按钮和文本字段,并将新类对象连接到应用程序委托接口文件。

不幸的是,track 类的实例从未创建,因此程序无法运行,因为 awakeFromNib 函数从未被调用。我已经尝试将它放在应用程序委托文件和新的控制器类中。

我哪里错了???

0 投票
1 回答
979 浏览

cocoa - awakeFromNib 为我的 WindowController 调用了两次,对吗?

有人告诉我 awakeFromNib 应该只调用一次,所以我很惊讶地看到它为我的 WindowController 调用了两次。我使用 IB 在 MainMenu.xib 中创建我的 WindowController,但是为了告诉它要加载哪个窗口 xib 文件,我向它添加了一个 init 方法。

当我调试代码时,我发现这个调用堆栈触发了对 awakeFromNib 的第一次调用。所以基本上 [MyWindowController init] 触发了第一次调用。然后我猜第二个调用是因为加载 MainMenu.xib。那是对的吗 ?

有人可以对此有所了解吗?

顺便说一句,我在堆栈溢出上阅读了一些与我类似的其他问题,一些答案说这可能是因为文件 owen 问题。所以我特别把window xib文件的文件所有者改成了NSApplication。但是 awakeFromNib 仍然为 MyWindowController 调用了两次。

在此处输入图像描述

0 投票
2 回答
239 浏览

objective-c - 立即从视图控制器启动新的 UIViewController

当 UIViewController 启动时,我想立即启动另一个 UIViewController。这不起作用:

为了使它起作用,我必须为一个方法执行 afterDelay,如下所示:

是否有可能毫不拖延地让它工作?

0 投票
1 回答
859 浏览

iphone - 在 awakeFromNib 中设置委托

我在 Interface Builder 中有一个 ViewController,其中嵌入了一个 TableViewController(我在其他地方重用了 TableViewController 的功能)。我需要将 TabelViewController 中的委托设置回它嵌入的 UIViewController,以便我可以使用 UIViewController 的 NavigationController(单击嵌入式 TableViewController 中的行,出现新的 ViewController ......)。

我有一个委托来完成这一切,我唯一的问题是在哪里设置委托。我已经读过,awakeFromNib一旦读入笔尖并设置了所有 IBOutlet(嵌入式 TableViewController 是 IBOutlet),就会调用它。我可以单步执行代码并查看该函数在应用程序首次启动时被调用。但是,当我稍后调用委托时(单击一行时),委托是null. 如果我将委托设置为viewDidLoad,一切都会很好。

任何想法为什么 awakeFromNib 不起作用?我应该在 viewDidLoad 中这样做吗?

谢谢!

0 投票
1 回答
415 浏览

iphone - 自定义 UILabel 创建以避免本地化问题

亲爱的程序员,

我正在创建一个 customLabel 类,如下所示:

但我的问题是,在笔尖加载时,drawTextInRect 方法只为 Label 调用一次。

如果 popig 再次出现视图,那么每个 customLabel 对象将执行哪个方法?

请帮帮我。提前致谢。