Objective c [NSLocale preferredLanguages]和[[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”之间有什么区别?

Objective c [NSLocale preferredLanguages]和[[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”之间有什么区别?,objective-c,xcode,cocoa,Objective C,Xcode,Cocoa,[NSLocale preferredLanguages]和[[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”]之间有什么区别 我对苹果的文档描述感到困惑,无法理解,谁能告诉我它们的区别?因为我从他们那里得到了同样的数据 在不同的情况下,我们应该使用哪一种 两者都是为了返回相同的东西,第一个更方便 上面写着:对于[[NSUserDefaults standardUserDefaults]objectForKey

[NSLocale preferredLanguages]
[[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”]
之间有什么区别

  • 我对苹果的文档描述感到困惑,无法理解,谁能告诉我它们的区别?因为我从他们那里得到了同样的数据

  • 在不同的情况下,我们应该使用哪一种

  • 两者都是为了返回相同的东西,第一个更方便

    上面写着:对于
    [[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”]

    返回的数组包含与用户首选顺序的AppleLanguages键关联的语言

    上面写着:对于
    [NSLocale preferredLanguages]

    作为NSString对象数组的用户语言首选项顺序


    两者都是为了返回相同的东西,第一个更方便

    上面写着:对于
    [[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”]

    返回的数组包含与用户首选顺序的AppleLanguages键关联的语言

    上面写着:对于
    [NSLocale preferredLanguages]

    作为NSString对象数组的用户语言首选项顺序


    如果您支持Mac OS X 10.4或更早版本,则应使用
    [NSLocale preferredLanguages]
    ,使用
    [[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”]

    您应使用
    [NSLocale preferredLanguages]
    ,使用
    [[NSUserDefaults standardUserDefaults]objectForKey:@“AppleLanguages”]
    如果您支持Mac OS X 10.4或更早版本。

    在不同的情况下,我们应该使用哪一个?如果在我的情况下,这两个都返回nil like怎么办?在不同的情况下,我们应该使用哪一个?如果在我的情况下,这两个都返回nil like怎么办?