有时候项目可能涉及到使用多种语言,如简体、繁体。为了适应这种情况我用到了Localizable.strings,然后在不同的语言版本文件内定义相应的内容(这就不说了,可以参考:http://www.cocoachina.com/ios/20150114/10911.html)
在应用被打开的时候底部的菜单应该能够自动显示相应语言版本的文字。为了实现这个,自定义一个UITabBarController后添加以下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | override func viewDidLoad() { super .viewDidLoad() self .delegate = self if let items = self .tabBar.items { let latestNewItem = items[0] as! UITabBarItem latestNewItem.title = NSLocalizedString ( "LASTED_ACTIVITY" ,comment: "LASTED ACTIVITY" ) let memberSquareItem = items[1] as! UITabBarItem memberSquareItem.title = NSLocalizedString ( "MEMBER_SQUARE" ,comment: "MEMBER_SQUARE" ) let couponItem = items[2] as! UITabBarItem couponItem.title = NSLocalizedString ( "COUPON" ,comment: "COUPON" ) let otherItem = items[3] as! UITabBarItem otherItem.title = NSLocalizedString ( "OTHER" ,comment: "OTHER" ) } |
上面的代码应该很容易看,本人暂时是用到这种方法,如果阁下有更好的方法还请赐教。
分类:
Swift
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端