1.创建
var richText = new ccui.RichText();
richText.ignoreContentAdaptWithSize(false);
richText.width = 120;
richText.height = 100; 通过赋值width和height来设置contentSize,ignoreContentAdaptWithSize设为false来让文本按contentSize进行布局。
2.创建文本元素
static RichElementText* create(int tag,const Color3B& color,glubyte opacity,const std::string& text,const std::string& fontName,float fontSize); static RichElementimage* create(int tag,const std::string& filePath); static RichElementCustomNode* create(int tag,Node* customNode);三种元素分别是文字、图片、普通节点(用普通节点就可以挂从Node派生的类)。
tag貌似内部没有用,外部也访问不了,其他参数容易理解。
var re1 = new ccui.RichElementText(0,cc.color.WHITE,255,'这是白色白色白色白色白色白色','黑体',24);
var re2 = new ccui.RichElementText(0,cc.color.RED,'这是红色红色红色红色红色红色红色','楷体',24);
var reimg = new ccui.RichElementimage(0,'res/pic/Closenormal.png');
var renode = new ccui.RichElementCustomNode(0,new cc.Sprite('res/pic/Closenormal.png'));
3.增删元素
void insertElement(RichElement* element,int index);
void pushBackElement(RichElement* element);
void removeElement(int index);
void removeElement(RichElement* element);
4.其他方法
void setVerticalSpace(float space);
virtual void setAnchorPoint(const Vec2 &pt);
virtual Size getVirtualRendererSize() const override;
void formatText();
virtual void ignoreContentAdaptWithSize(bool ignore);getVirtualRendererSize这个js好像没有导出。
5.结果