cocos2d-x 獲取SD卡圖片 線程 UI

獲取SD卡圖片:函數

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

/mnt/sdcard 是SD卡的根目錄,有的機子是/sdcard,因此最好用內部函數獲取SD卡的根目錄。spa

 

UI更新是不能在子線程裏的,這樣會出現黑塊或白塊或直接掛掉線程

弄個定時器schedule實時監聽是否要更新UIcode

.h文件blog

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更新
    }
}  
相關文章
相關標籤/搜索