// // 本地化多语言 // 多语言文件格式是plist,一个国家一个plist,各国家plist文件名见_initLocalContent(LanguageType lan)方法 // #ifndef RULocalization_h #define RULocalization_h #include "cocos2d.h" #include "RUDefine.h" USING_NS_CC; NS_RU_BEGIN #define gLocalization(key) redutils::Localization::instance(key) class Localization{ public: static Localization* instance(std::string key4Local); std::string getString(std::string valueKey); // 分组测试用 void setGroup(int group); // mac工具debug专用 void debugLanguage(LanguageType lan); private: Localization() = default; ~Localization() = default; void _initLocalContent(); void _initLocalContent(LanguageType lan); std::string _getLocalFileName(std::string lanSuffix); private: static std::unordered_map _gLocalizations; std::string _localName; //实例在_gLocalizations中的key,也用作多语言文件的前缀 int _group = 0; bool _isLoadContent = false; ValueMap _contentMap; }; NS_RU_END #endif /* RULocalization_h */