3的Bundle
preferredLocalizations
是如此混亂,我有這麼多的問題:Bundle.preferredLocalizations混亂
爲什麼2個
preferredLocalizations
方法是類方法,但繼續談論一些不明特定的捆綁,就好像它們被稱爲一些個人Bundle
實例?preferredLocalizations(from:)
:究竟是什麼a bundle object
和the bundle
?-
返回指定列表束對象會使用來定位資源爲當前用戶的一個或多個本地化。
-
NSString對象的陣列,其中的每一個指定爲束支撐本地化語言ID。
-
preferredLocalizations(from:forPreferences:)
:究竟是什麼the specified bundle
和the receiver’s bundle
?-
返回給指定捆綁和用戶的語言偏好捆綁對象寧願本地化。
-
NSString對象的陣列,其中的每個在接收器的束識別定位。這些字符串根據指定的首選項在數組中排序,並從本地化數組參數中的字符串中獲取。如果該包中沒有用戶首選的本地化可用,則此方法將返回其中一個包本地化。
-
爲什麼
preferredLocalizations(from: localizations)
簡化版,返回相同的結果爲preferredLocalizations(from: localizations, forPreferences: nil)
?如上所述,閱讀他們的文檔並沒有什麼幫助。當然,他們看起來這樣設計的,但實際上並不:// Locale.preferredLanguages: ["es-CN", "ja-CN", "zh-Hans-CN", "en-CN", "he-IL"]. let localizations = ["de", "en", "es", "fr", "it"] print(Bundle.preferredLocalizations(from: localizations)) // ["en"] print(Bundle.preferredLocalizations(from: localizations, forPreferences: nil)) // ["es"]