4
|
Kaelin Colclasure · 技术社区 · 14 年前 |
1
4
我假设要在Interface Builder中实例化窗口控制器,需要拖动
大多数情况下,当您使用ib创建和配置对象时,您在各个检查器中指定的设置将使用
但是,在这个通用对象实例的情况下,接口生成器不一定知道任何关于被实例化对象的类的信息。因为您可以指定任何要实例化的类名,如果您指定了一个ib没有通过调色板或框架加载的类,那么它就无法使用
我不知道这是否在任何地方被记录在案,但我想这就是为什么你看到了不同之处。我也不认为它是特定于
|
2
0
我还是没有正式的答案 为什么 可可就是这样,但在实际应用中似乎很方便。我用下面的-init方法定义了一个nswindowcontroller子类,它的工作方式很迷人。
如果调用了-initwithcoder:,我就必须弄清楚如何履行调用super-initwithcoder:方法的隐式义务,并仍然获得用于加载的正确的-windownibname。这样更直接。 我还是希望能找到一些文件 说 这一类是不同的,解释了为什么和如何,但在缺乏文献的情况下,有经验证据。 |
3
0
编码方法用于已序列化并保存到文件中的类。 你在这里做的是不同的。您正在将控制器类构建到可执行文件中。这意味着不需要从文件中读取类本身,因为它是正在运行的应用程序二进制文件的一部分。 当使用这个控制器类时,您需要提供一个init方法,在其中提供NIB文件名。为什么?好吧,您已经将编译类作为exe的一部分,但不知道NIB文件是什么。这就是你提供知识的方式。 这样想。控制器类是exe的一部分。需要在它和NIB文件之间建立一些链接。一种方法是扫描所有的NIB文件,寻找对这个控制器的引用。那将是低效的。在init和所有引导中提供名称。 换句话说,你从你的实验中学到了一些重要的教训。干得好,太沉迷了。 |
Noah H · 如何通过终端或Swift禁用三指轻拍手势? 6 年前 |
Dmitry Serov · 货币数字格式-数字为整数时省略分数部分 6 年前 |
Duny · ObjC日期始终返回2017年12月25日 6 年前 |
Jan Kaiser · NSButton不调用其操作 6 年前 |