2015-06-19 89 views
0

在過去的6個月中,我已經能夠在iOS Swift中製作出相當不錯的應用程序。但是現在我想談談開發中的一些性能和最佳實踐。iOS Swift使用image.xcassets VS在xcode文件夾中放置圖像

所以我想知道在Xcode中使用圖像的最佳做法是什麼?具體而言,我通常將圖像拖放到我的項目文件夾中以在我的應用程序中使用它。但是我知道我們也可以使用image.xcassets來做同樣的事情。

問題是,哪一個是正確的?或者應該在什麼時候使用?

我在image.xcassets中見過,我們必須提供3張圖片。 1倍,2倍和3倍。這是否意味着我正在增加應用程序的大小(考慮到我使用了許多圖像)?它也是如何影響性能的?從項目文件夾或從image.xcassets獲取文件有什麼不同嗎?

+0

Apple強烈建議使用資產目錄。有關更多信息,請參見[官方文檔](https://developer.apple.com/library/ios/recipes/xcode_help-image_catalog-1.0/Recipe.html)。 – mattt

+0

感謝您的鏈接。但是,你可以通過你對我問的問題的一些個人看法嗎?我真的很感激。 –

+0

我的個人意見是無關緊要的。你應該遵循官方建議。案例:WWDC 2015推出了應用程序瘦身,當從應用程序商店下載時,該應用程序瘦身僅選擇性地捆綁用於特定設備的資產。 – mattt

回答

1

在我的頭頂上「Image.xcassets」在Xcode 6中有一個錯誤,您無法加載JPEG圖像。除此之外,這是組織圖像的最佳做法。 1x,2x,3x適用於iOS設備的不同屏幕分辨率。在iPhone 6 Plus上加載3x圖像,在具有視網膜屏幕(iPhone 6,iPhone 5/5s/5c,iPhone 4/4s等)的任何設備上加載2x,並在某些較舊的iPad和iPhone上加載1x

+0

謝謝。一旦下載應用程序,這是有道理的。另外,我可以看到image.xcassets的好處在於組織和設備大小的兼容性。但是,應用程序大小呢?我使用的1x圖像是〜500kb,2x是〜750kb,但3x圖像超過1Mb,我的應用程序中有6張圖像。那麼這會增加我的應用程序大小(從iTunes下載)所有圖像大小的6倍?因爲據我所知,應用sliming是在iOS 9中可能包含的功能,以減少您的應用程序的大小在設備安裝防禦。感謝您對此的評論。再次感謝。 –

+1

@ Riding.Driving在Xcode 7和iOS 9中,瘦身將適用,其中只有相關資產將被包含在用戶下載您的應用程序時。但是,如果您現在想要最小化的應用程序大小,稍後必須下載圖像,幷包含您的邏輯以僅下載相關圖像。我不太確定應用程序減肥是否與Xcode 7的iOS 7/iOS 8項目反向兼容。 –

相關問題