位置: 编程技术 - 正文
推荐整理分享http://www.2cto.com/kf/201402/280576.html,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
Cocos2dx 3.0 提高篇(十一) xml文档的读取与调用
假设有一个名为 label.xml 的文档,内容如下:
?<!--?xml version="1.0"encoding="UTF-8"?--> <plist version="1.0"> <dict> <key>id</key> <string></string> <key>info</key> <string>风一般的男纸</string> </dict> <dict> <key>id</key> <string></string> <key>info</key> <string>注定是寂寞的</string> </dict></array></plist>步骤如下:1、读取xml文档,将读取到的内容放到ValueVector上。2、通过id获取info里的内容;3、将info里的内容显示到label中。?1 代码实现:1、读取?1ValueVector txt_vec = FileUtils::getInstance()->getValueVectorFromFile("label.xml");这里有两个要点,一个是ValueVector,这是啥东东?我只能回答在,在CCValue.h里,有这么一行代码 :?1typedef std::vector<value> ValueVector;</value>恩,人艰不拆;第二个要点是用 getValueVectorFromFile(FileName)读取xml文档...2、提取数据首先提取 id ,因为id和它对应的是一对键,所以可以用Map来存储它们:
?1auto txt_map = txt_vec.at(0).asValueMap();放到Map中即可用Map的方法读取键为”id"的是多少:?1intid_int = txt_map.at("id").asInt();最后就是做出判断,如果id的为的话,那么提取相应的键为 info 的:?if(id_int == ){ auto label_str = txt_map.at("info").asString();}恩,过程就是这样;3、将整理好的代码贴出来?ValueVector txt_vec = FileUtils::getInstance()->getValueVectorFromFile("label.xml");//读取xml文档,放入ValueVector中 for( auto& e : txt_vec){ auto txt_map = e.asValueMap();//将键转化成Map式,放入txt_map中 intid_int = txt_map.at("id").asInt();//获取id if(== id_int) { auto label_str = txt_map.at("info").asString();//获取info的 auto label1 = LabelTTF::create(label_str,"Arial",); label1->setPosition(Point(,)); this->addChild(label1,2); } elseif(== id_int) { auto label_str = txt_map.at("info").asString(); auto label1 = LabelTTF::create(label_str,"Arial",); label1->setPosition(Point(,)); this->addChild(label1,2); }}如果有对Vector 、 Map使用不大了解的人,可以参考我之前写的博客:Vector:
[置顶] Cocos2d-x《雷电大战》(5)-单例模式英雄飞机闪亮登场! 林炳文Evankaka原创作品。转载请注明出处
[cocos2dx学习笔记]用cocos2dx3.X完成塔防游戏王国保卫战--地图(二) 接上文,添加地图,在地图层直接添加即可,我是将AnchorPoint设置在(0,0),方便计算坐标mapSprite=Sprite::createWithSpriteFrameName(String::createWithFormat(Stage_%d.png,l
Cocos2dx技术(三)——cocos2dx基本概念(四)动作 1、Action类的作用:Action对象可以随时间改变Node的属性,任何一个以Node为基类的对象都持有一个可执行动作的Action对象。2、Cocos2dx里面的By与To的区别By
标签: http://www.2cto.com/kf/201402/280576.html
本文链接地址:https://www.jiuchutong.com/biancheng/368914.html 转载请保留说明!下一篇:[置顶] Cocos2d-x《雷电大战》(5)-单例模式英雄飞机闪亮登场!([置顶]游戏名:chivalry2)
友情链接: 武汉网站建设