我想標題處理球員模具事件http://www.matim-dev.com/full-game-tutorial---part-13.html無法孩子附加到現場
下給出我有延伸Player類的AnimatedSprite到文本對象附加到一個場景。我創建通過,玩家
mPlayer = new Player(x, y, resourceManager.getVertexBufferObjectManager(), resourceManager.getCamera(), mPhysicsWorld)
{
@Override
public void onDie() {
if (!gameOverDisplayed)
{
displayGameOverText();
}
}
};
的displayGameOverText()
方法給出,
private void displayGameOverText()
{
mCamera.setChaseEntity(null);
gameOverText.setPosition(mCamera.getCenterX(), mCamera.getCenterY());
attachChild(gameOverText);
gameOverDisplayed = true;
}
我也初始化gameOverText在createScene()
方法,
gameOverText = new Text(0, 0, resourceManager.getFontArial(), "Game Over!", mVBOM);
在這個階段的代碼作品罰款和文本遊戲結束!當調用onDie()
時顯示。
但是,當我重新設計onDie()
方法,如下所示,文字遊戲結束!當調用onDie()
時,不顯示。
@Override
public void onDie() {
if (!gameOverDisplayed)
{
mCamera.setChaseEntity(null);
gameOverText.setPosition(mCamera.getCenterX(), mCamera.getCenterY());
attachChild(gameOverText);
gameOverDisplayed = true;
}
}
這種行爲在我看來很奇怪,因爲代碼是相同的。唯一的區別是我已經在後面的onDie()
方法中給出了內聯代碼。
有人能幫我理解是什麼導致了這種行爲。 logcat中沒有寫入關於此的日誌。
是的,你是對的。 Text對象被連接到Player實體。當我將Text對象附加到場景時,它可以正常工作'SceneManager.getInstance()。getCurrentScene()。attachChild(gameOverText);' – 2013-03-20 15:53:55