cocos讀取plist檔案
PlistUtils.cpp
#include "PlistUtils.h" PlistUtils::PlistUtils(void) { } CCRect PlistUtils::getRectFromPlist(const char* fileName,const char* key1,const char* key2,const char* key3){ CCDictionary* pDictionary=(CCDictionary*)CCDictionary::createWithContentsOfFile(fileName); CCDictionary* content1=(CCDictionary*)pDictionary->objectForKey(key1); CCDictionary* content2=(CCDictionary*)content1->objectForKey(key2); CCString* object=(CCString*)content2->objectForKey(key3); const char* s=object->getCString(); const short l=object->length(); char temp[4]; short tempPosition=0; short tempRect[4]; short tempRectPosition=0; for (int i=0;i<l;i++){ if((*(s+i)=='{'||*(s+i)=='}'||*(s+i)==' ')&&i!=l-1){ continue; }else if(*(s+i)==','||i==l-1){ tempRect[tempRectPosition]=atoi(temp); //CCLog("%d",tempRect[tempRectPosition]); tempRectPosition++; tempPosition=0; temp[0]='\0'; temp[1]='\0'; temp[2]='\0'; temp[3]='\0'; }else{ temp[tempPosition]=*(s+i); tempPosition++; } } return CCRectMake(tempRect[0],tempRect[1],tempRect[2],tempRect[3]); } /*通過plist檔案 @fileName plist檔案 @resBigPicName 組合圖 @resSmallPicName 小圖名稱*/ CCSprite* PlistUtils::getSpriteFromPlist(const char* fileName, const char* resBigPicName, const char* resSmallPicName){ CCSpriteFrameCache* frameCache = CCSpriteFrameCache::sharedSpriteFrameCache(); frameCache->addSpriteFramesWithFile(fileName, resBigPicName); CCSpriteFrame* spriteFrame = frameCache->spriteFrameByName(resSmallPicName); CCSprite* sprite = CCSprite::createWithSpriteFrame(spriteFrame); return sprite; } /*清除CCSpriteFrameCache*/ void PlistUtils::spriteCacheDispose(){ CCSpriteFrameCache* frameCache = CCSpriteFrameCache::sharedSpriteFrameCache(); frameCache->autorelease(); frameCache->retain(); }
PlistUtils.h
#ifndef __PLIST_UTILS_H__ #define __PLIST_UTILS_H__ #include "cocos2d.h" USING_NS_CC; using namespace cocos2d; /*讀取plist工具類*/ class PlistUtils { public: PlistUtils(void); /*獲取plist 中資源所在的CCRECT*/ static CCRect getRectFromPlist(const char* fileName,const char* key1,const char* key2,const char* key3); /* 讀取指定精靈 @fileName plist路徑 @resBigPicName 大圖地址 @resSmallPicName 小圖地址 */ static CCSprite* getSpriteFromPlist(const char* fileName, const char* resBigPicName, const char* resSmallPicName); static void spriteCacheDispose(); }; #endif
內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。
相關文章
- 什麼是Plist檔案
- android解析plist檔案Android
- plist檔案格式轉換器
- Java 讀取檔案Java
- tiff檔案讀取
- 任意檔案讀取
- python讀取檔案——python讀取和儲存mat檔案Python
- viper 讀取配置檔案
- go配置檔案讀取Go
- iOS讀取.csv檔案iOS
- php 讀取超大檔案PHP
- JAVA 讀取xml檔案JavaXML
- WinForm讀取Excel檔案ORMExcel
- java讀取properties檔案Java
- 前端讀取excel檔案前端Excel
- 用友任意檔案讀取
- IOC - 讀取配置檔案
- VB讀取文字檔案的例子:逐行讀取
- Plist Converter for mac(plist檔案轉換工具) v1.4.1 啟用版Mac
- go–讀取檔案的方式Go
- Mysql溯源-任意檔案讀取?MySql
- Java系列:讀取XML檔案JavaXML
- C#讀取Xml檔案C#XML
- java中讀取配置檔案Java
- matlab讀取npy檔案Matlab
- pg從磁碟讀取檔案
- python小白檔案讀取Python
- iOS如何讀取.db檔案iOS
- python讀取大檔案Python
- python 讀取csv檔案Python
- 用JDOM讀取XML檔案XML
- Java高效讀取大檔案Java
- PlY檔案讀取顯示
- PHPExcel讀取excel檔案示例PHPExcel
- 【python】建立,讀取檔案Python
- 建立與讀取.ini檔案
- servlet能否讀取本地檔案???Servlet
- 讀取檔案方法大全