2012-09-28 51 views
0

我創建了一個iPhone遊戲,將使用超過1200個PNG圖像文件,並且所有圖像組合在一起達到11MB的大小,我想知道什麼是存儲它們的最佳方式,我打算使用s3存儲通過亞馬遜,但我會愛他們是在資源文件夾中的應用程序的分開,所以用戶可以離線以及。所以我想要得到什麼是存儲圖像緩存和優化.png文件與IOS應用程序一起使用的最佳方式。謝謝將.png圖像存儲在ios應用程序中?

+0

iOS和Xcode非常擅長優化PNG文件以達到最高效率。也許你需要採取不同的方法。 – CodaFi

+0

您想在運行時或開發資源時保存它們嗎? –

+0

沒有即時通過應用程序使用它們,即時通訊不保存圖像,他只是我選擇的動物圖像?用戶deosnt上傳任何照片! – unknown

回答

2

只需將它們拖入xcode。 11 MB並不多,蘋果已經提高了3G/Edge的下載限制。

一旦你有他們在您的項目中,你只需要調用他們像

UIImage *myImage1 = [UIImage imageNamed:@"1.png"]; 

它沒有得到更簡單。

如果您沒有將這些文件放入您的項目並下載它們,請將它們下載到您的Documents文件夾中。你可以把你想要的任何東西放在那個目錄中,因爲它只是用於你的項目,並且沒有其他項目可以訪問它。

+0

如果他正在處理1200張圖片,也許他應該使用'imageWithContentsOfFile'而不是'imageNamed'。後者的緩存邏輯受到了一些爭論。如果圖像太小(如果可能會在會話期間使用很小的圖像子集),也許不是問題,但儘管很方便,但我會對使用'imageNamed'保持警惕。 – Rob

+0

我完全同意,毫無疑問 –

1

11MB這些日子並不多,你的應用程序可以高達50MB,仍然可以下載通過蜂窩網絡,所以最好的解決方案是;

a)別擔心。把它們放在資源文件夾中。

如果您打算獲得更多圖片,那麼最簡單的解決方案就是在應用程序連接網絡時直接下載它們。您可以將它們存儲在Documents文件夾中,並將它們標記爲不備份,以便它們不與iCloud同步。您也可以將它們存儲在Caches文件夾中,但這會使它們在任何時候更容易消失,因此您需要稍微更復雜的機制來識別它們不再位於磁盤上並重新將它們拉出。

相關問題