是否可以在一个带Xcode的项目中使用两个具有相同名称的xib文件?

jmu*_*phy 3 iphone xcode xib ios

我有一个iPhone项目,我正在创建一个免费/精简版.我创建了第二个目标,此时我正在尝试处理每个目标所具有的不同接口.在目标之间几乎所有视图都会有所不同,因为它们至少会在顶部有一个adView.但是,有些观点在几个方面有所不同.

我想知道是否可以为每个要加载的视图控制器创建两个具有相同名称的xib.lite xib将进入它自己的目录,我只会将它添加到lite目标的bundle中.由于存在单独的bundle,我认为如果正确的xib在正确的bundle中,我就不必区分我想加载的xib代码.

我正在尝试使用xcode 4.2执行此操作,但当我尝试打开具有相同名称的第二个xib时xcode崩溃.

在此先感谢您的帮助.

Mic*_*ann 5

更好,更明智的方法是命名为一个xib文件提供完整版本名称,另一个xib文件为lite名称.EG"MyGreatAppView-Full.xib"和"MyGreatAppView-Lite.xib".

以编程方式实例化视图控制器时,可以传递的参数之一是要加载的XIB名称.

例如

MyGreatAppViewController * appVC;

#if LITEVERSION
appVC = [[MyGreatAppViewController alloc] initWithNibName: @"MyGreatAppView-Lite.xib" bundle: nil];
#else
appVC = [[MyGreatAppViewController alloc] initWithNibName: @"MyGreatAppView-Full.xib" bundle: nil];
#endif
Run Code Online (Sandbox Code Playgroud)

您想到的另一个想法是保持xib文件的名称相同,这取决于将xib文件保存在不同的文件夹中,并希望XCode不会混淆.XCode 3相当不错.XCode 4,至少对我而言,并不是最稳定的野兽.