首页 > 代码库 > cocos2d-x 获取SD卡图片 线程 UI

cocos2d-x 获取SD卡图片 线程 UI

获取SD卡图片:

CCSprite* pSprite = CCSprite::create("/mnt/sdcard/x.png");

/mnt/sdcard 是SD卡的根目录,有的机子是/sdcard,所以最好用内部函数获取SD卡的根目录。

 

UI更新是不能在子线程里的,这样会出现黑块或白块或直接挂掉

弄个定时器schedule实时监听是否要更新UI

.h文件

class A: public cocos2d::CCLayer  {  public:      virtual bool init();        static cocos2d::CCScene* scene();      CREATE_FUNC(A);
    void setImagePath(const char * ImagePath);
    bool m_UI;  // 是否更新UI
virtual void update(float fDelta); // UI更新};

.cpp文件

bool A::init(){    if ( !CCLayer::init() )    {        return false;    }    this->scheduleUpdate();    // 每帧调用一次}    void A::setImagePath(const char * ImagePath)   // 子线程调用{    m_UI = true;}void A::update( float fDelta )   {      if (m_UI)    {        m_UI = false;        // UI更新    }}  

 

cocos2d-x 获取SD卡图片 线程 UI