cocos2d x本地化 多語言適配

2021-06-15 03:08:02 字數 2100 閱讀 6543

請注意,cocos2d-x的本地化需要在「真機」上測試。其本身沒有整合該解決方案,需要自己設計,唯一提供的函式如下

cccomment.h中的定義:

typedef enum languagetype

cclanguagetype;

#ifndef _current_language_test_h_

#define _current_language_test_h_

#include "cocos2d.h"

#include "../testbasic.h"

class currentlanguagetest : public cclayer

;class currentlanguagetestscene : public testscene

;#endif // _current_language_test_h_

return ret;

}使用方法:

testcpp專案中有test例項,參見**currentlanguagetest.h/cpp

#ifndef _current_language_test_h_

#define _current_language_test_h_

#include "cocos2d.h"

#include "../testbasic.h"

class currentlanguagetest : public cclayer

;class currentlanguagetestscene : public testscene

;#endif // _current_language_test_h_

#include "currentlanguagetest.h"

currentlanguagetest::currentlanguagetest()

addchild(labellanguage);

}void currentlanguagetestscene::runthistest()

指定讀取資源的目錄,以後從這裡讀取,例如高畫質中文,高畫質英文。一些通用的資源,可以放到resource下,程式在hd_xx中找不到,會到resource下查詢。

ccfileutils::sharedfileutils()->setresourcedirectory("hd_ch");

ccfileutils::sharedfileutils()->setresourcedirectory("hd_en");

將字串統一放在資源資料夾中作為資源處理

"name":"小名"

"interest":"籃球"

"name":"ming"

"interest":"basketball"

把以上檔案儲存在相同的檔名,不同的資源路徑下 。然後通過以下方法讀取,前提是已經設定了資源路徑(參照本文第二節)。 

unsigned long size ;

char* file = (char*)ccfileutils::sharedfileutils()->getfiledata("test.json","r",&size);

json::reader reader;

json::value root;

if (!reader.parse(std::string(file),root,false))

std::string name = root["name"].asstring();

std::string interest = root["interest"].asstring();

建議封裝成單例模式

以上**為jsoncpp**,配置方法參照之前的一篇文章。配置方法很簡單,只需要把第三方庫檔案匯入你的專案就行。

json庫配置和使用

當然,也可以用xml實現,參照tinyxml的配置方法:

最後,搜到一篇參考文章,還沒細看

cocos2d x 聲音,粒子,資料本地化

資料本地化 stl裡面的string a a.str c 可以轉換為char cocos2d裡面的是 string gettostring remove是吧乙個陣列中某乙個數刪除了,把這個數後面的所有數字都向前移一位。fastremove就是吧最後 乙個複製乙份填補到前面刪除的那乙個位置 xml檔案...

C 本地化實現多語言

visual studio 對於.net 程式的本地化提供了完整的支援,這裡僅介紹實現多語言版本本地化程式的簡單步驟.注意黑體處為關鍵點.一.窗體本地化 對於windows 窗體,你需要做的第一步是確定你的預設介面語言,預設語言是指當執行程式無法找到已定義的本地化資源時,預設使用的語言,由於.net...

uwp 多語言和本地化

1.在專案根目錄建立strings資料夾,再strings資料夾建立需要的語言名子目錄,再新增資源檔案resources.resw,目錄構如 strings en us resources.resw strings zh cn resources.resw 2.在各語言的resources.resw...