iOS实现应用内切换语言及字体大小(模仿微信)

时间:2022-05-18 19:46:05

前言

最近公司需要切换多语言和字体大小功能,上网查看比较少的实用方案。于是我经过几天尝试和思考完成了第一版的应用内多语言版本切换的功能demo。下面分享给大家,需要的朋友可以参考学习,下面话不多说了,来一起看看详细的介绍吧。

方案思路:

      一.如何只在一个配置文件中,实现多语言的配置。

      二.每个文本控件如何显示对应语言。

      三.如果通过开关来控制界面中的每个文本控件,同时切换对应的语言和字体样式。

首先:

解决第一个配置问题:我是用plist文件(json文件也可以)。通过一个key 对应一组语言数据就可以解决了。如下图:我设置key为订单详情,对应数组类型和文本:中文(订单详情) ,英文(orderdetail),中文繁体(訂單詳情)。

iOS实现应用内切换语言及字体大小(模仿微信)

其次:

我通过category类方式来绑定配置文件中的key值,然后通过一个枚举类型切换语言种类和字体大小。

iOS实现应用内切换语言及字体大小(模仿微信)

iOS实现应用内切换语言及字体大小(模仿微信)

iOS实现应用内切换语言及字体大小(模仿微信)

最后:

我通过一个控制中心,要变化语言的文本控件加入到这个控制中心的字典中,然后通过此控制中心来统一管理和分发消息。此外我还做了一些富文本的语言切换功能。

源码下载:

github地址:https://github.com/petercore/zclanguagemanagerdemo

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:https://www.jianshu.com/p/006ea162a4f0