iphone獲取當前系統的語言 – iPhone手機開發技術文章 iPhone軟體開發教學課程

iphone的設置裡的數據幾乎都是保存在NSUserDefaults裡的,試想一下iphone常用的四種數據存儲的方式,NSUserDefaults也確實是一個理想的保存設置文件的方法。與其他方式相比,簡單易用,而且滿足需求。

首先我們來看一下語言的設置頁面:


你有沒有留意一個現象呢,就是你選定的語言總是出現在第一列。

這個是一個有趣的現象,你想一想,什麼樣的數據結構比較符合存儲這個列表數據。我想很多人的答案都會是,數組。

如果假設,這列表是以數組的形式保存,則第一項就是當前選定的語言,即當前語言在數組中的index值為0。

整個結構到這裡就很清晰瞭。NSUserDefaults使用(key,array)的方式保存瞭語言設置的數據,而array的第一項即是當前選定的語言。所以知道key是獲取到當前語言的關鍵:

[cpp] 
/*得到當前設置的語言*/ 
+ (NSString*)currentLanguage 
{  www.aiwalls.com
    NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; 
    NSArray* languages = [defaults objectForKey:@"AppleLanguages"]; 
    NSString* currentLanguage = [languages objectAtIndex:0]; 
    return currentLanguage; 

怎麼樣來查找key呢?

文檔,About the User Defaults System 或者  Locale Concepts,都很值得一看。

 

 作者:likendsl

發佈留言