是否可以更改 xib 文件?

Posted

技术标签:

【中文标题】是否可以更改 xib 文件?【英文标题】:Is it possible to change xib files around? 【发布时间】:2013-07-20 18:04:47 【问题描述】:

我在 xcode4 中工作,我对 viewcontroller 的 xib 文件做了很多工作,但我想将该视图链接到一组不同的 .h 和 .m 文件,所以我的问题是它是否可能更改将 xib 文件链接到其 .h 和 .m 的内容?

谢谢!

@interface TGTViewController : UIViewController

【问题讨论】:

【参考方案1】:

我的问题是是否可以更改将 xib 文件链接到其 .h 和 .m 的内容?

是的。

首先,要意识到 .xib 文件实际上只是序列化对象的存档,因此通常包含多个对象。

其次,要知道作为文件所有者的对象(通常是视图控制器)甚至不包含在 .xib 中——它是加载 .xib 的对象。

第三,您可以在 .xib 编辑器(也称为 Interface Builder)的身份检查器中查看(并更改)对象的类型。

因此,如果您想更改存储在 .xib 文件中的对象的类型,例如自定义视图,您只需选择 IB 中的对象,转到身份检查器,并更改类型。如果要更改加载 .xib 文件的对象的类型,例如视图控制器,请选择 .xib 中的 文件所有者 图标并更改类型。当然,您还需要更改用于在代码中创建对象的类型。

没有任何东西可以将 .xib 文件链接到 .m 或 .h 文件。如果 .xib 包含给定类型的对象,.xib 加载机制将期望找到该类型的类定义,如果找不到它会抛出异常,但它不关心源文件是什么命名。

【讨论】:

哦,好吧,我想我知道你在说什么,这是加载机制的代码吗?查看我刚刚添加的代码 它来自我的 .h 文件 不,那是类声明。 .xib 加载发生在您加载 .xib 文件时,可以使用 NSNib 手动加载或使用 .xib 文件初始化视图控制器等对象。

以上是关于是否可以更改 xib 文件?的主要内容,如果未能解决你的问题,请参考以下文章

xib 文件更改后视图方向错误

更改 Xcode 中的默认 Xib 文件

iphone到ipad xib文件更改

更改 xib 名称 [重复]

打开另一个文件时Xcode更改我的xib

是否可以在 .xib 文件中使用对颜色的引用而不是颜色?