有什麼方法可以讓兩個.nib文件具有相同的名稱?我使用的Xcode 4,我想擁有的接口即多個版本:MainMenu.xib
在不同的文件夾,這樣我就可以訪問它們:.nib文件的多個版本
[[MainMenuViewController alloc] initWithNibName:@"MainMenu" bundle:skinBundle]
在我的skinBundle
會從通道束:
skinBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle] pathForResource:@"skinFolderPath" ofType:nil]
當我構建應用程序時,所有目錄都變平了,結果只有一個MainMenu.nib
。當我將文件夾添加爲文件夾引用時,目錄樹被保留,但沒有一個.xib文件被編譯爲.nib文件。
有什麼辦法可以達到這個目的嗎?或者也許更好的方式來管理多個版本的筆尖?
謝謝!這正是我所期待的。在Xcode 4中,我設法通過在_Project Navigator_ - > _Add Target_ button-> _Mac OS X Framework&Library_ - > _Bundle_中選擇項目來創建包。然後我從應用程序的目標_「複製軟件包資源」_階段中刪除所有資源文件,並相應地將它們添加到軟件包中。接下來,我將Bundles添加到應用程序的_「Target Dependencies」_ stage,並將項目導航中_Products_組的Bundle拖到_「Copy Bundle Resources」_主應用程序中。 – Johnnywho
我必須補充說,我必須更改Bundle的目標構建設置:_Base SDK_到'Latest iOS'和_Supported Platforms_到'iphonesimulator iphoneos'。沒有這些,Bundle產品將不會與主目標位於同一個目錄中。在_「Copy Bundle Resources」_階段中產生錯誤。我遇到的另一個問題是,nib在加載時緩存引用的圖像,當兩個不同捆綁包中有兩個具有相同名稱的圖像時,由於按名稱緩存,只會顯示一個圖像。你有沒有優雅的解決方案? – Johnnywho
而不是使用'[NSImage imageNamed:]',使用'[NSImage imageWithContentsOfFile:]'。它的記憶效率較低,但會阻止這種情況的發生。 –