• App开发流程之Xcode配置和本地化


    补充一点遗漏的Xcode配置。

    1.偏好设置。Xcode的菜单栏Xcode -> Preference

    Fonts & Colors可以自定义编码区和控制台的背景、字体。

    Text Editing:Line numbers显示行数,Code folding ribbon使代码可以折叠,page guide at column提示每行代码设定的最大宽度

     

    2.scheme配置。菜单栏Product -> Scheme -> Edit Scheme

    Archive:Archive Name可以自定义,最后将在Organizer中体现

     

    3.Plugin安装。如果想增加插件,建议使用Alcatraz。https://github.com/alcatraz/Alcatraz

    根据github上的提示安装以后,重新启动Xcode,出现提示框,选择Load Bundle。选择菜单栏Window -> Package Manager,进行插件安装

     

    推荐一些插件:

    VVDocumenter-Xcode:在方法或者属性上一行输入“///”会自动生成注释模板

    KSImageNamed:在imageNamed方法名出现之后会自动提示项目中所包含的图片名称和缩略图

    SCXcodeSwitchExpander:输入switch(x),修改x之后会自动把x所有的可选值全部列出来,自动补全

    FKConsole:在Xcode控制台将Unicode编码decode为中文的插件,开关在菜单栏Plugins按钮下

    KZLinkedConsole:通过log反向找到源代码位置

    RegX:选中需要对齐的代码,选择菜单栏Edit->RegX->Macros/ObjC Property/Variables/Assignments四种对齐方式。快捷键分别是Command+F1/Command+F2/Command+F3/Command+F4

     

    再推荐一个装逼利器:

    ActivatePowerMode:敲代码时屏幕抖动火花迸溅效果,可以在菜单栏Plugins子菜单下控制效果

    常用的插件就推荐这些了,再多,Xcode可能会出现性能问题甚至崩溃。

    如果安装插件太多导致Xcode性能降低,需要在Package Manager中卸载不必要的插件。

     

    本地化

    主要涉及Info.plist文件和字符串文件的本地化。

    本地化Info.plist文件

    1.在Xcode文件目录中,右键Supporting Files文件夹 -> New File -> Resource -> Strings File

     

    命名必须为“Info.plist”

     

    点击右侧“Localize...”按钮,在弹出框中,先选择语言“English”,确定,即生成英语对应的本地化文件,可在Finder中看到en.lproj文件夹存在InfoPlist.strings

     

    选中工程文件的Project栏的base -> Info

    点击Localizations栏的“+”按钮,选中简体中文(hans)

    忽略两个storyboard文件,只勾选InfoPlist.strings,点击Finish完成Info.plist文件本地化配置工作。

    点击InfoPlist.strings(English),添加代码:CFBundleDisplayName = "Base";

    点击InfoPlist.strings(Simplified),添加代码:CFBundleDisplayName = "基础";

    以上代码就完成了对应用显示名称的本地化操作。

    如果之前在模拟器上运行过本项目(可以先注释代码运行一次),应用名应该一直为小写的“base”,重新运行项目,即可在模拟器上看到不同系统语言对应的不同应用名称。

    字符串的本地化

    1.如上述第一步一样,在Supporting Files目录下创建Strings File文件,不过这次命名必须为“Localizable”,其他操作步骤一样,只不过这次生成英语本地化文件后,就可以看到有简体中文本地化文件待选。

    2.配置完成后,在Localizable.strings(English)文件中添加类似的代码:"hello world" = "hello world!";

    Localizable.strings(Simplified)中添加类似代码:"hello world" = "你好,世界!";

    3.在AppDelegate.m文件的didFinishLaunchingWithOptions方法中添加如下代码:NSLog(@"%@", NSLocalizedString(@"hello world", @"hello world"));

    4.在模拟器上运行,切换系统语言,可以看到Xcode控制台的输出的不同内容

    说明:

    1.NSLocalizedString宏定义可以自动识别名为Localizable的Strings File文件,所以使用该宏定义,必须注意命名

    2.使用非Localizable名称的Strings File文件,读取时候,需要用NSLocalizedStringFromTable(key, tbl, comment)宏定义,可以指定自定义名称的Strings File文件(tbl参数)

     使用此方法,可以通过代码控制显示特定语言的本地化内容,而不受当前系统语言的限制

    3.comment参数无实际作用,只用于描述

     以上,就是本地化操作的记录。

  • 相关阅读:
    数据结构-树与二叉树-思维导图
    The last packet successfully received from the server was 2,272 milliseconds ago. The last packet sent successfully to the server was 2,258 milliseconds ago.
    idea连接mysql报错Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property
    redis学习笔记
    AJAX校验注册用户名是否存在
    AJAX学习笔记
    JSON学习笔记
    JQuery基础知识学习笔记
    Filter、Listener学习笔记
    三层架构学习笔记
  • 原文地址:https://www.cnblogs.com/ALongWay/p/5829495.html
Copyright © 2020-2023  润新知