cocos2dx --- 富文本的使用 RichText

在实际工作中,有非常多地方会使用 富文本,这里仅仅介绍最简单的富文本用法:

是由cocostudio 提供的 RichText:

直接贴代码,再分析:

//这里測试富文本控件
	ui::RichText* _richText = ui::RichText::create();
	_richText->ignoreContentAdaptWithSize(false);
	_richText->setSize(CCSizeMake(500, 300));

	ui::RichElementText* re1 = ui::RichElementText::create(1, ccWHITE, 255, "这是白色的文字。 ", "Helvetica", 24);
	ui::RichElementText* re2 = ui::RichElementText::create(2, ccYELLOW, 255, "这个就是黄色的文字了。

", "Helvetica", 24); ui::RichElementText* re3 = ui::RichElementText::create(3, ccBLUE, 255, "我是蓝色。", "Helvetica", 47); ui::RichElementText* re4 = ui::RichElementText::create(4, ccGREEN, 255, "绿的在这里。

", "Helvetica", 24); ui::RichElementText* re5 = ui::RichElementText::create(5, ccRED, 255, "最后才轮到红色 ", "Helvetica", 24); ui::RichElementImage* reimg = ui::RichElementImage::create(6, ccWHITE, 255, "CloseNormal.png"); cocos2d::extension::CCArmatureDataManager::sharedArmatureDataManager()->addArmatureFileInfo("cocosgui/100/100.ExportJson"); cocos2d::extension::CCArmature *pAr = cocos2d::extension::CCArmature::create("100"); pAr->getAnimation()->play("Animation1"); ui::RichElementCustomNode* recustom = ui::RichElementCustomNode::create(1, ccWHITE, 255, pAr); ui::RichElementText* re6 = ui::RichElementText::create(7, ccORANGE, 255, "橘子橙色!! ", "Helvetica", 35); _richText->pushBackElement(re1); _richText->insertElement(re2, 1); _richText->pushBackElement(re3); _richText->pushBackElement(re4); _richText->pushBackElement(re5); _richText->insertElement(reimg, 2); _richText->pushBackElement(re6); _richText->pushBackElement(recustom); CCSize size = CCDirector::sharedDirector()->getWinSize(); _richText->setPosition(ccp(size.width / 2, size.height / 2)); addChild(_richText);



      RichText 里面能够放入 RichElement,而 RichElement有三个子类:RichElementTextRichElementImageRichElementCustomNode

很好理解,就是文本、图片和自己定义的节点。


总结:

长处:

第三方已经实现好了,而且久经考验。

RichText能显示文本、图片、和自己定义的控件,而且能设置字体,字号和颜色。满足一些主要的显示功能。

缺点:

RichText 没有提供解析Html文件。没有描边、下画线、阴影、发光和文字图片的链接点击等事件。



posted @ 2017-08-05 21:54  wzzkaifa  阅读(1686)  评论(0编辑  收藏  举报