iOS App 图片 文字 国际化
2020-07-15 本文已影响0人
蓝白自由
创建一个 string 文件,名称为 Localizable.string
选中 Localizable.string,点击右边的 Localize 按钮,
在弹框的下拉菜单中选一个需要添加 string 文件的语言,确认。
" 操作同 InfoPlist.string "
在对应的语言的 Localizable.string 文件中添加对应的图片名称和文本内容。
"mainImage" = "mainImage_ch";
等号左边为代码需要调用的 key,右边为对应的中文图片名称 value。
"mainText" = "Chinese";
等号左边为代码中需要调用的 key,右边为对应的中文文本 value。
最后,只要在代码中需要显示图片和文字的部分
使用 Foundation 框架中的 NSLocalizedString(key, comment) 调用即可。
程序将根据第一个参数去对应语言的文件中取对应的值,
第二个参数将转化为字符串文件里的注释,可以传 nil,也可以传空字符串 @""。
#defineNSLocalizedString(key,comment) [[NSBundle mainBundle] localizedStringForKey:(key)value:@""table:nil]
图片调用
UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:NSLocalizedString(@"mainImage", nil) ]];
文本调用
textLabel.text = NSLocalizedString(@"mainText", nil);
文字的内容 就直接生效
图片的话 测试 无效, 可能是我哪里没有注意到,
不过我使用下面的方式, 不用再 Localizable.string 写代码。
Show in finder 替换一下。测试也是可以的