首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在xcode xib文件中文件所有者的需求是什么?我可以在没有文件所有者的情况下做同样的事情吗?

在xcode xib文件中文件所有者的需求是什么?我可以在没有文件所有者的情况下做同样的事情吗?
EN

Stack Overflow用户
提问于 2012-06-03 19:12:25
回答 3查看 6.8K关注 0票数 5

为什么我应该设置File的所有者类标识,而不是显示在nib中的自定义对象的类标识,并从它建立连接?如果我将文件的所有者设置为nil,会发生什么?对我来说,使用nil文件的所有者一切都很好,那么从它进行连接有什么要求呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-06-03 20:06:54

NIB表示存档的对象图。您可以加载它,该对象图将被重新构建。问题是,您通常希望/需要将新加载的对象图挂接到程序的已有对象图中。你不会希望它站在一边,与其他一切隔绝。

有几种方法可以将新加载的对象图连接到程序的对象图的其余部分。一种方法是NIB中可用的代理对象集。其中一个用于应用程序对象。另一个这样的代理对象是File的所有者。代理对象是在NIB中具有表示但实际上不包含在NIB中的对象。与NIB中的其他对象不同,由代理表示的对象不是在加载NIB时创建的,它们在加载NIB之前就存在了。代理允许这些预先存在的对象与NIB中的对象之间的连接。这就是如何将来自NIB的新对象图连接到程序的现有对象图。

MainMenu NIB是不同寻常的。它是在应用程序启动时由Cocoa自动加载的,这意味着在预先存在的对象中没有(实际上不可能有)太多。该NIB通常还包含应用程序委托的一个实例,这是一种协调控制器。但是,通常情况下,其他类型的NIB不包含协调控制器。(它们确实包含中介控制器,如NSArrayController,但这是不同的。)相反,协调控制器通常是在代码中创建的,通常,它们负责加载NIB。

例如,您将使用NSWindowController作为窗口的协调控制器。该窗口将在NIB中定义。窗口控制器将在代码中实例化-无论哪个代码决定应该创建窗口-它将加载NIB。它也将是NIB的文件所有者。它将管理窗口和NIB的顶级对象。

如果您将文件的所有者设置为nil,那么a)此时您可能正在处理非常简单的NIBs,b)您可能会从您加载的NIBs中泄漏顶级对象。

票数 11
EN

Stack Overflow用户

发布于 2012-06-03 19:25:58

文件的所有者是包含该视图的所有IBOutlets和IBActions的文件。例如,如果您有一个"ViewController“类,并且它包含一个IBOutlet UIButton *button-(IBAction)changeViewWhenButtonPressed: (id) sender,那么您连接插座和操作的唯一方法就是将"ViewController”设置为视图文件的所有者。

我相对确定类标识是File的所有者的同义词。

另外,这些链接可能会有帮助:

What are File Owner and First Responder in iPhone SDK - xCode?

File's Owner Definitions

What is File's Owner

票数 7
EN

Stack Overflow用户

发布于 2012-06-03 20:10:07

“file‘s owner”是nib中的对象可以引用nib外的对象的方式,反之亦然。(还有一些更复杂的方法可以做到这一点,但并不常用。)如果你不需要这样做,你就不需要使用文件的所有者。

对于主应用程序,文件的所有者是Application对象。如果您的所有应用程序逻辑都在一个也在nib中实例化的自定义类中,并且如果您对发送到应用程序的操作消息使用“first responder”,那么您可能不需要连接到它。这样就可以了。

如果您有一个文档窗口或弹出窗口或其他东西,文件的所有者通常是正在查看的对象,因此能够将ui附加到它是很有用的。您可以多次加载相同的nib,每个nib都由该类的不同实例“拥有”-不同的文档或已检查的对象或其他对象。

(基本上,文件的所有者就是传递给nib-loading方法中的" owner :“参数的任何对象。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10873138

复制
相关文章
使用 Python 按行和按列对矩阵进行排序
假设我们采用了一个输入的 MxM 矩阵。我们现在将使用嵌套的 for 循环对给定的输入矩阵进行逐行和按列排序。
很酷的站长
2023/02/22
6.1K0
使用 Python 按行和按列对矩阵进行排序
对大文件字符进行计数
但是当文件过大时,会报错,显示空间不足: sort: write failed: /tmp/sortbDyE0W: No space left on device
生信编程日常
2020/10/10
6270
如何对列表进行搜索
logic [31:0] ram_block[1024] = '{default:0}
Lauren的FPGA
2019/10/30
2.7K0
使用Outlook对邮件进行分类
Outlook不愧为Office家族中的一员,相比国内FoxMail来说功能要强大的多。若再配上Exchange,那确实十分无敌。
深蓝studyzy
2022/06/16
2.2K0
使用Outlook对邮件进行分类
使用PyTorch对音频进行分类
对对象进行分类就是将其分配给特定的类别。这本质上是一个分类问题是什么,即将输入数据从一组这样的类别,也称为类分配到预定义的类别。
代码医生工作室
2020/07/03
5.8K0
对数据进行按文件后缀名分类
from os import walk,getcwd,makedirs,system
第4117座孤岛
2022/05/31
1.1K0
Java对List列表进行分组处理(对List列表固定分组/对List列表平均分组)
将一组数据平均分成n组 即:数据分组数固定为N,每组数据个数不定,每组个数由List列表数据总长度决定 /** * 将一组数据平均分成n组 * * @param source 要分组的数据源 * @param n 平均分成n组 * @param <T> * @return */ public static <T> List<List<T>> averageAssign(List<T> source, int n) { List<List<T>> result = new Ar
目的地-Destination
2023/03/06
3.5K0
使用Python按另一个列表对子列表进行分组
在 Python 中,我们可以使用各种方法按另一个列表对子列表进行分组,例如使用字典和使用 itertools.groupby() 函数,使用嵌套列表推导。在分析大型数据集和数据分类时,按另一个列表对子列表进行分组非常有用。它还用于文本分析和自然语言处理。在本文中,我们将探讨在 Python 中按另一个列表对子列表进行分组的不同方法,并了解它们的实现。
很酷的站长
2023/08/11
4530
使用Python按另一个列表对子列表进行分组
在 WordPress 后台如何使用分类和标签进行过滤文章列表?
我们知道默认情况下,WordPress 后台文章列表,可以通过分类进行过滤,那么是否可以通过标签过滤呢?甚至自定义的分类呢?
Denis
2023/04/13
3.5K0
在 WordPress 后台如何使用分类和标签进行过滤文章列表?
TensorFlow练习1: 对评论进行分类
TensorFlow是谷歌2015年开源的一个深度学习库,到现在正好一年。和TensorFlow类似的库还有Caffe、Theano、MXNet、Torch。但是论火爆程度,TensorFlow当之无愧,短短一年就在Github就收获了4万+颗星,把前面几个库获得的star加起来也不敌TensorFlow。
周小董
2019/03/25
8650
TensorFlow练习1: 对评论进行分类
TensorFlow练习2: 对评论进行分类
1、 使用大数据,了解怎么处理数据不能一次全部加载到内存的情况。如果你内存充足,当我没说
周小董
2019/03/25
6990
TensorFlow练习2: 对评论进行分类
React 基础案例 | 可折叠的问题列表和按分类展示的美食菜谱(三)
大家好,本篇文章小编将和大家一起做两个简单的案例——可折叠的问题列表和按分类展示的美食菜谱。这两个案例,我们还是继续练习 useState Hook 的用法。
前端达人
2021/08/10
9910
【Python】对字典列表进行去重追加
将M去重后的字典放入列表X中,得到X = [{dict1}, {dict2},{dict3}, {dict4}]
py3study
2020/01/07
1.9K0
思维导图 - 如何对信息进行分类?
绘制思维导图时,分类是最重要的,其需要满足MECE(相互独立,完全穷尽),而且需要逻辑自洽,否则就会导致结构不清晰,部分信息分类不明确 为什么要做分类? 因为人脑擅长记忆和处理结构化的信息 如何分类? 需要符合MECE(Mutually Exclusive & Collectivyly Exhaustive)原则,也就是相互独立,完全穷尽,简单来说就是不重不漏 分类集合需要逻辑自洽,比如时间关系,组合关系,关系,层次关系等 某一类信息太多的时候,也可以使用多级分类 常用分类和结构化分析模式 做信息分类
十毛
2021/07/20
6970
在 Python 中对服装图像进行分类
图像分类是一种机器学习任务,涉及识别图像中的对象或场景。这是一项具有挑战性的任务,但它在面部识别、物体检测和医学图像分析等现实世界中有许多应用。
很酷的站长
2023/08/11
5531
在 Python 中对服装图像进行分类
数据集 | 性别(按名称)数据集
该数据集将这些时间段内男婴和女婴的名字的原始计数结合在一起,然后计算出给定总数的名字的概率。来源数据集来自美国,英国,加拿大,澳大利亚等国家的政府机构。
数据科学人工智能
2022/03/30
4890
数据集 | 性别(按名称)数据集
SVM、随机森林等分类器对新闻数据进行分类预测
* 新闻爬取(crawler_cnstock.py,crawler_jrj.py,crawler_nbd.py,crawler_sina.py,crawler_stcn.py)
大数据技术与机器学习
2019/11/20
2.6K1
22 - lambda表达式对列表进行排序
如果列表元素是字典类型,如何利用lambda表达式对列表进行升序降序排序? # lambda 表达式只有一行代码,并返回该行代码的结果 a = [ {'name': 'Bill', 'age': '40'}, {'name': 'Mike', 'age': '18'}, {'name': 'Johb', 'age': '28'} ] print(a) print(sorted(a, key=lambda x: x['age'])) a.sort(key=lambda x: x[
ruochen
2021/05/23
1.6K0
22 - lambda表达式对列表进行排序
前端CHROME CONSOLE的使用:测量执行时间和对执行进行计数
利用 Console API 测量执行时间和对语句执行进行计数。 这篇文章主要讲: 使用 console.time() 和 console.timeEnd() 跟踪代码执行点之间经过的时间。 使用 console.count() 对相同字符串传递到函数的次数进行计数。 测量执行时间 time() 方法可以启动一个新计时器,并且对测量某个事项花费的时间非常有用。将一个字符串传递到方法,以便为标记命名。 如果您想要停止计时器,请调用 timeEnd() 并向其传递已传递到初始值设定项的相同字符串。 控制台随后会
企鹅号小编
2018/01/24
1.8K0
前端CHROME CONSOLE的使用:测量执行时间和对执行进行计数
点击加载更多

相似问题

django url没有反向匹配

20

Django url -没有反向匹配

13

Django url反向匹配错误

10

Django不匹配URL,没有反向匹配

31

Django没有反向匹配错误

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文