美文网首页
NSLocalizedString的一个小知识点

NSLocalizedString的一个小知识点

作者: Haven_ZN | 来源:发表于2017-06-08 19:26 被阅读215次

    今天在使用NSLocalizedString的时候碰到一个小问题:

    中文版:我是来自“xxx”的xxx
    英文版:I am xxx from 'xxx'
    

    这里有两个问题:

    1. 中文版被两个参数分成了4部分,英文版被两个参数分成了5部分
    2. 参数的顺序不同

    第1个很好办,只要在NSLocalizedString中使用%@这样的参数就可以了,这样在使用的时候按照这样的格式就可以了:

    Localizable.strings中有如下定义:
    "FORMAT" = "我是来自“%@”的%@";
    
    str = [NSString stringWithFormat:NSLocalizedString(@"FORMAT", nil), xxx, xxx];
    

    第2个不太常见,原来参数是可以指定顺序的:

    Localizable.strings中有如下定义:
    "FORMAT" = "我是来自“%1$@”的%2$@";
    "FORMAT" = "I am %2$@ from '%1$@'";
    
    str = [NSString stringWithFormat:NSLocalizedString(@"FORMAT", nil), xxx, xxx];
    

    只需要在%和@中间加上1$,2$等等就可以啦,数字就代表参数的顺序。

    相关文章

      网友评论

          本文标题:NSLocalizedString的一个小知识点

          本文链接:https://www.haomeiwen.com/subject/ijmtqxtx.html