2010-12-20 64 views
5

有沒有辦法向Xcode項目中添加具有相同名稱的多個資源,並且其中一個資源優先於其他資源?在Xcode中使用同名的資源

例如: 我在一個Xcode項目中添加了兩個名爲icon.png的文件。它們位於文件系統中的不同文件夾(Folder1/icon.png和Folder2/icon.png)以及Xcode中的不同組上。有沒有辦法告訴Xcode使Folder2/icon.png優先於Folder1/icon.png?如果只有1 icon.png存在,然後使用那個。

謝謝。

EDIT(2010-12-23):

你可以有多個同名的文件,即使他們不是在單獨的文件夾中引用的Xcode項目,但他們在不同的組。一旦編譯完成,應用程序包(它將是平坦的,沒有文件夾)將只有一個文件副本(icon.png)。你如何選擇要使用的文件的副本?

有人告訴我,你可以爲BlackBerry做這個。它的工作原理如下:編譯器將下載項目中的文件列表,並開始將它們添加到應用程序包中。如果它看到一個重複的,它將覆蓋它(或不),所以底部(或頂部)的文件將具有更高的優先級,並且將是最終的包。

+1

這聽起來像這是錯誤的解決方案,我不確定的問題。爲什麼不編輯這個問題,我們可以想出更好的解決方案來解決您的原始問題。 – coneybeare 2010-12-20 22:54:04

回答

1

這可以通過使用Xcode項目中的資源包內的文件夾更容易地解決。看看這裏:http://developer.apple.com/library/mac/#documentation/CoreFoundation/Conceptual/CFBundles/Introduction/Introduction.html

+0

有沒有辦法做到這一點,而不必使用文件夾引用?界面生成器似乎沒有選擇通過引用(藍色文件夾圖標)添加的文件夾中的文件,儘管它在手動輸入名稱時起作用,例如/folder1/mail_icon.png。 – Roberto 2010-12-23 16:25:30

1

等一下,因爲你特別提到了icon.png,你是否試圖用不同的圖標圖像提供不同的iDevices(iPad,iPhone4,iTouch3 ...)?

如果是的話,看看這個,http://d.pr/W2w0,Apple已經爲我們提供了一個方便的方式來完成這個任務。您只需遵循特定的命名約定即可。

+0

謝謝,但我意識到這一點。我試圖爲不同的客戶提供不同的圖標。我有一個應用程序使用一堆默認圖標,但客戶端X想要使用自己的mail_icon.png,而客戶端Y也想使用它。有沒有辦法告訴Xcode「如果有2個mail_icon.png文件,使用該文件夾中的文件」而不必使用文件夾引用? – Roberto 2010-12-23 16:22:31

+0

那麼我不知道...我也對這個答案感興趣。任何人都可以幫忙? – 2010-12-23 16:26:13

-1

如果我們遇到這種情況,我們會做什麼:
我們在項目目錄的文件系統級別上有幾個子文件夾,並將它們添加到XCode中分成不同的組。
這很好。對於實際構建,我們試圖避免在一個目標中具有相同名稱的文件。 Icon.png和iTunesArtwork只在每個目標中添加一次。
它只是被證明是一個可維護性的噩夢

+0

如果您想要一個名爲GenericIcons的組和另一個名爲ClientSpecificIcons的組,並且它們包含這樣的信息會怎樣? GenericIcons有mail.png,star.png,bill.png;而ClientSpecificIcons只有mail.png和star.png。我想使用ClientSpecificIcons中的mail.png和star.png,只使用GenericIcons中的bill.png。我怎麼做?換句話說,我如何使ClientSpecificIcons組的優先級高於GenericIcons組? – Roberto 2010-12-23 18:05:20

+0

你爲什麼要這樣?只需正確設置目標,以便只包含必要的對象。其他一切對我來說都很危險。 – LordT 2010-12-24 01:17:04

相關問題