label* a = label::createwithsystemfont("中國", "宋體", 30);
a->setposition(point(100, 200));
addchild(a);
這種方式也可以顯示中文,不過顯示中文的個數必須是雙數,單數會產生莫名其妙的錯誤,不建議使用
第二種方式 這種方式只能使用已經設定好的中文
是採用xml的方式顯示中文
xml內容:
label* label = label::createwithsystemfont(b, "宋體", 17);
第三種方式
這個是我自己在網上搜的一些資料整理而成的,我給封裝成了乙個類,用的時候新增該類,直接用就可以了
#ifndef _chinese_display_h_
#define _chinese_display_h_
#include
#include "stringapiset.h"
#include "winerror.h"
using namespace std;
class chinesedisplay
private:
static wstring str2wstr(const string &str)
static string widebyte2utf8(const wstring& text)
char* resultstring = new char[asciisize];
int convresult = ::widechartomultibyte(cp_utf8, 0, text.c_str(), text.size(), resultstring, asciisize, null, null);
if (convresult != asciisize)
std::string buffer(resultstring, convresult);
delete resultstring;
return buffer;}};
#endif
cocos2d x 滾動數字label
遊戲中有時候需要滾動計數顯示,比如新增金幣從100滾動顯示到9999,這裡封裝乙個動作,直接傳入label即可,方便使用。使用時呼叫utilslabel裡面的方法即可。utilslabel.hpp actionlabel created by xujw on 16 3 7.ifndef utilsl...
cocos2dx3 4原始碼閱讀
objloader loadobj 主要是 exportfacegrouptoshape 這個方法的處理 shapes.normals shapes.texcoords 在updatevertex方法處理過程中儲存的是頂點的資訊 頂點,法線,紋理座標 shapes.shapes.push back ...
cocos2dx3 4的多執行緒bug嚴重
這幾天發現了兩個bug,都是多執行緒的。requestlayout invalidate 來重新布局,啟用su cecreated 方法。2。非同步載入資源卡死問題。director getinstance gettexturecache addimageasync texturepath.c st...