新建WebSprite.h和WebSprite.cpp
1.声明h文件
#pragma once
#include “cocos2d.h”
#include “…/extensions/cocos-ext.h”
#include “network/HttpClient.h”
USING_NS_CC;
USING_NS_CC_EXT;
//http下载网络图片 保存本地读取
using namespace cocos2d::network;
using namespace std;
class HttpPicDownLoad : public cocos2d::Ref
{
public:
HttpPicDownLoad();
~HttpPicDownLoad();
static HttpPicDownLoad *getInstance();
void setHttpPic(int64_t picId, std::string urlPic);
void onHttpRequestCompleted(HttpClient *sender, HttpResponse *response);
private:
};
class WebSprite :public Node
{
public:
WebSprite();
~ WebSprite();
public:
static WebSprite create(int64_t picId, std::string urlPic);
virtual bool init();
void setHeadPic(int64_t picId, std::string urlPic);
static std::string GetNetPicImagePath(uint64_t picId, bool bCheck, const charurlPic);
// 获得应用的缓存目录;
static std::string GetPhoneCachePath();
void getMessage(Ref* ref);
public:
LayerColor *_mainLayer;
int64_t _picId = -1;
std::string _urlPic = “”;
private:
};
// 得到最后修改时间,文件不存在或者错误时,返回0 ;
TIME_64_S GetFileModifyTime(const char *pFile);
// 创建目录,返回0代表成功;
int CreatDir(const char *pDir);
2.实现webSprite.cpp
#include “WebSprite.h”
static HttpPicDownLoad *g_httpPicDownLoad = NULL;
HttpPicDownLoad::HttpPicDownLoad()
{
}
HttpPicDownLoad::~HttpPicDo