2012-12-13 75 views
6

這裏是我的代碼:在libgdx中使圖像可觸摸的最簡單方法是什麼?

@Override 
public void resize(int width, int height) { 
super.resize(width, height); 

stage.clear(); 

// background image 
Image backImage = new Image(backTexture); 
backImage.setX(0); 
backImage.setY(0); 
backImage.setWidth(800); 
backImage.setHeight(480); 

// start game image 
Image startImage = new Image(startTexture); 
startImage.setX(415); 
startImage.setY(180); 
startImage.setWidth(323); 
startImage.setHeight(69); 

stage.addActor(backImage); 
stage.addActor(startImage); 
} 

我創建簡單的遊戲,這是我創建主菜單的方式。我想讓我的startImage可觸摸(可點擊),因爲Image類沒有可用的偵聽器。我應該怎麼做?還是使用ImageButton更好?這樣,我就必須建立影像地圖集這似乎是有點複雜,我現在..

編輯: 我嘗試以下操作:

startImage.addListener(new ClickListener() { 
    public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) 
    { 
     game.setScreen(new SplashScreen(game)); 
     return true; 
    } 
}); 

但它仍然無法正常工作..

編輯:

Gdx.input.setInputProcessor(stage); 

需要調用。解決了。

+0

發現這裏的解決方案:http://stackoverflow.com/questions/11373390/button-clicklistener-is-not-working-in-libgdx-game [1]:http://stackoverflow.com/questions/11373390/button-clicklistener-is-not-working-in-libgdx-game – milano

+0

請提供您的解決方案作爲「答案」並接受它。見http://blog.stackoverflow.com/2011/07/its-ok-to-ask-and-answer-your-own-questions/ –

回答

9

解決方案是以下調用:

Gdx.input.setInputProcessor(stage); 
相關問題