热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

iPhone开发中的多语言化

之前写过一篇关于Qt多语言化的文章:http:blog.csdn.netjasonblogarticledetails5445191。虽然在进行iOS开发的过程中&#

之前写过一篇关于Qt多语言化的文章:http://blog.csdn.net/jasonblog/article/details/5445191。


虽然在进行iOS开发的过程中,可以在Xcode里直接使用中文字符串,但总觉得有点奇怪和不舒服。

加上用户可以在iPhone设置里选择不同的语言环境,因此采取国际化手段是个不错的选择。

最重要的是,工作量不大,尤其是刚开始进行项目时就考虑到了。


这里讨论最基本的文案多语言化。

首先,为项目新增资源文件Strings File,命名为“Localizable.strings”。


选中该文件,并打开Xcode的基础信息面板,如下图View所示:


可以看见中间有Localization栏目,在此添加语言类型,比如简体中文、繁体中文、英语等:


这时候通过Finder查看目录,会发现多了zh_Hans.lproj、zh_Hant.lproj等文件,里面都有空的Localizable.strings文件。


然后,使用苹果提供的NSLocalizedString宏来替换代码中的中文字符串:

//替换前
@"取消"
//替换后
NSLocalizedString(@"取消", nil)


接着,利用genstrings工具(genstrings -o en.lproj *.m)来为刚才空的Localizable.strings文件生成内容,它会为使用NSLocalizeString宏所修饰的字符串生成映射列表。

最后,我们通过修改Localizable.strings文件来实现多语言化。






推荐阅读
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 零拷贝技术是提高I/O性能的重要手段,常用于Java NIO、Netty、Kafka等框架中。本文将详细解析零拷贝技术的原理及其应用。 ... [详细]
  • 本文介绍如何在 Android 中自定义加载对话框 CustomProgressDialog,包括自定义 View 类和 XML 布局文件的详细步骤。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤
    开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤 ... [详细]
  • 本文提供了针对iOS设备在Xcode 8.0及以上版本中的调试指南,详细介绍了从环境配置到常见问题解决的全流程。内容涵盖设备连接、证书配置、日志查看及性能监控等多个方面,适用于2015年后的开发环境。通过本指南,开发者可以高效地进行应用调试,提升开发效率。 ... [详细]
  • 在iOS平台上,应用的流畅操作体验一直备受赞誉。然而,过去开发者往往将更多精力集中在功能实现上,而对性能优化的关注相对较少。本文深入探讨了iOS应用性能优化的关键要点与实践方法,旨在帮助开发者提升应用的响应速度、降低功耗,并改善整体用户体验。通过具体案例分析和技术解析,文章提供了实用的优化策略,包括代码层面的改进、资源管理优化以及界面渲染效率的提升等。 ... [详细]
  • 在iOS开发领域,针对不同屏幕尺寸的适配一直是开发者关注的重点。本文聚焦于iPhone 6/6 Plus的适配策略,特别是通过AutoLayout技术在淘宝客户端中的实际应用案例,为开发者提供了一套系统而有效的解决方案。文章不仅详细解析了AutoLayout的工作原理,还结合具体实例,探讨了如何利用这一工具实现界面元素的灵活布局,确保应用在各种设备上都能保持良好的用户体验。这对于正面临多设备适配挑战的iOS开发者来说,无疑是一份宝贵的参考资料。 ... [详细]
  • [译]  OS X 和 iOS 的测绘框架Core Plot 入门教程
    [译] OS X 和 iOS 的测绘框架Core Plot 入门教程 ... [详细]
  • 导读:本文来自SwiftGG翻译组,作者@walkingway基于苹果Swift官方博客中TedKremenek所撰写的“Swift2.2Released!”文章进行了关于Swift2. ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • 本文将带你快速了解 SpringMVC 框架的基本使用方法,通过实现一个简单的 Controller 并在浏览器中访问,展示 SpringMVC 的强大与简便。 ... [详细]
  • Linux下Google Test (GTest)测试环境搭建步骤
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • OpenGL01 Mac 系统 OpenGL 环境配置
    直入主题(此环境配置在Mac下):1、xcode新创建MacOS工程,如下图2、添加 OpenGl.framework GLUT.framework两个系统库3、添加两个工具文件C ... [详细]
author-avatar
qaz2502919927
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有