2016-04-23 8 views
4

Aus irgendeinem Grund funktioniert dies nicht mehr. Es funktionierte das letzte Mal, als ich an dem Projekt arbeitete, aber jetzt ist es nicht. Ich habe überprüft, dass im Projekt enthalten ist. Aber es wirft eine Ausnahme auf die setPosition-Zeile, weil title_sprite null ist.cocos2d-x Sprite :: create ("Dateiname.png") gibt null zurück

bool MenuScene::init() 
{ 
    if (!Layer::init()) 
    { 
     return false; 
    } 

    Size visibleSize = Director::getInstance()->getVisibleSize(); 
    Vec2 origin = Director::getInstance()->getVisibleOrigin(); 

    auto title_sprite = cocos2d::Sprite::create("spaceCannonTitle.png"); 
    title_sprite->setPosition(Point(visibleSize.width/2 + origin.x, visibleSize.height - title_sprite->getContentSize().height)); 

    this->addChild(title_sprite); 
    ... 
} 

EDIT: Wenn ich den title_sprite Kommentar aus, dann ist es nicht abstürzen, aber ich sehe nicht, das Menü und ich bekomme diese Fehlermeldung:

libpng error: CgBI: unhandled critical chunk

Antwort

4

ich das gefunden Lösung here. Anscheinend müssen Sie zu Build-Einstellungen gehen und Remove Text Metadata From PNG Files auf NO setzen.

+0

Nicht unbedingt. Das hat in meinem Fall nicht funktioniert. –

+0

Überprüfen Sie außerdem, ob der übergebene Dateiname mit der Datei im Projekt übereinstimmt. –