iOS开发中,若是使用xib或storyboard搭建界面视图,视图中固定显示的文本内容可以用localized添加不同语言适配。但是在实际中会有动态加载的文本,这些文字的适配就需要NSLocalizedString等方法

  • 举个例子说明

从网络获取的JSON数据大多为英文如album、book、software等,界面中显示这些文本可在设置文本时调用NSLocalizedString方法,具体来说使用

NSString *NSLocalizedString(NSString *key, NSString *comment)

返回NSString,前一个作为key关键字,后一个作为strings文件的注释方便查看,假若我要动态显示Album,可以这样使用

 NSLocalizedString(@"Album", @"Localized kind: Album");

之后在设置完文本的localized方法后调用命令行生成Localizable.strings文件,具体如下:

cd ~/Desktop/oc_test/StoreSearch/StoreSearch 进入工程中目录

genstrings *.m -o zh-Hans.lproj  最后为不同语言的文件夹

之后自动生成.strings文件,添加进xcode工程,在文件中修改原来的英文为中文即可

  • 注意

每次调用genstrings命令后,strings文件都会重新创建覆盖原有内容,所以最好在将文件中所有动态加载的文本都实现NSLocalizedString方法后再创建strings文件;

当然,将原来内容备份下也是可以的。

iOS中使用Localizable.strings适配App在不同语言下文本的显示的更多相关文章

  1. IOS中Label根据上个label的内容设置下个label的frame

    #import "ViewController.h" @interface ViewController () @property(nonatomic,strong)UILabel ...

  2. iOS中数据库应用基础

    iOS 数据库入门 一.数据库简介 1.什么是数据库? 数据库(Database) 是按照数据结构来组织,存储和管理数据的仓库 数据库可以分为2大种类 关系型数据库(主流) PC端 Oracle My ...

  3. Android和iOS中Cocos2D日志为什么会出现skip frames

    在你运行app在Android或iOS设备或iOS模拟器中时,日志里往往会出现一行: I/Choreographer(28956): Skipped 159 frames! The applicati ...

  4. iOS开发——Localizable.strings

    这篇写的不多,但是绝对诚意满满.不会像别人一样,要不不详细,要不罗里吧嗦一堆. 1.创建Localizable.strings文件 Command+N—>iOS—>Resource—> ...

  5. iOS开发——国际化支持Localizable.strings

    这篇写的不多,但是绝对诚意满满.不会像别人一样,要不不详细,要不罗里吧嗦一堆. 1.创建Localizable.strings文件 Command+N—>iOS—>Resource—> ...

  6. iOS中web app调试(mac)

    原文 iOS中web app调试(mac).md 目录 一.真机联调配置 二.mac上Safari配置及真机联调 三.iOS模拟器使用 四.在iOS模拟器中安装app 近期公司vue项目开发,目的是一 ...

  7. 关于查找iOS中App路径时所要注意的一个问题

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交 ...

  8. 利用iOS中Safari浏览器创建伪Web App

    在safari浏览器里有一个“添加到主屏幕”选项,我们可以用来创建伪Web App,下面来了解一下iOS中Safari的私有属性 第一步设置Web App的主屏幕图标: 有两种属性值apple-tou ...

  9. 请问IOS中做一个手机网站的app壳复杂吗?

    公司开发了一个平台,手机网站已经做出来了,想开发一个苹果应用app,但公司没人会IOS开发,为了减小成本,现在想直接做一个壳来加载手机网站,请问在ios中复杂吗?是否有相应的控件直接加载url就行? ...

随机推荐

  1. 编程规范之 if 语句的简单规则

    原文: http://www.oschina.net/translate/basic-rules-for-code-readability-and-the-if-statement 代码应该是可阅读就 ...

  2. Win7主题被禁用

    今天早上干了一件傻缺的事,打开电脑的时候,某卫士提醒开机速度击败全国0.2%的电脑,之后点了优化...随后就发生了接下来的一幕: win7下面的主题都不能使用了,只能使用那种复古(很丑的样式,看着很不 ...

  3. angular-utils-pagination 使用案例

    angular-utils-pagination是基于angular,bootstrap,jquery的一个分页插件,详细介绍以及使用方法参照: Git:https://github.com/mich ...

  4. 新发现:AirDroid(用Web端控制自己的手机发信息)

    http://web.airdroid.com/ 好多功能呀,有空研究研究 http://jingyan.baidu.com/article/b24f6c82cd4ade86bfe5daf3.html ...

  5. C# .NET开发Oracle数据库应用程序

    .NET Framework访问Oracle数据库至少有两种方式,一种是利用微软提供的ADO.NET,另一种是利用Oracle提供的ODP.NET. 安装VS的时候会附带ADO.NET,安装Oracl ...

  6. GDI+画图类Graphics的使用

    一:基础定义 #region 定义线尾.线头为箭头.字体和笔刷 Pen p = );//定义画笔 蓝色,宽度为1(坐标显示颜色) p.EndCap = LineCap.ArrowAnchor;//定义 ...

  7. C# POST数据到指定页面,并跳转至该页面

    /// <summary> /// 跨页面POST数据 /// </summary> public class RemotePost : Dictionary<strin ...

  8. HTTP学习笔记1-基本定义

    1,HTTP(Hypertext  Transfer  Protocol)超文本传输协议,http是TCP/IP协议的一个应用层协议:从1990年开始就在www上广泛应用,是现今在www上应用的最多的 ...

  9. oracle for update和for update nowait

    原文地址:http://www.cnblogs.com/quanweiru/archive/2012/11/09/2762223.html 1.for update 和 for update nowa ...

  10. 一些提高开发效率的 Category

    最近工作陆续生产了一些方便开发的工具类,尽管最终没被收入使用,但不妨碍个人使用,故特此开一篇博文,也记录一些自己踩的坑. UIGestureRecognizer+Block 简单来说,你可以这样使用 ...