2017-07-31 98 views
0

我已經拍攝的圖像按鈕用下面的代碼:如何設置圖像的圖像按鈕

skin = new Skin(Gdx.files.internal("glassy-ui.json")); 
     button2 = new ImageButton(skin); 
     myTexture = new Texture(Gdx.files.internal("PlayButton.png")); 
     myTextureRegion = new TextureRegion(myTexture); 
     myTexRegionDrawable = new TextureRegionDrawable(myTextureRegion); 
     button2.getStyle().imageUp = new TextureRegionDrawable(new TextureRegion(new Texture(Gdx.files.internal("PlayButton.png")))); 
     button2.addListener(new InputListener(){ 
      @Override 
      public boolean touchDown (InputEvent event, float x, float y, int pointer, int button) { 
       game.dispose(); 
       game.setScreen(new GameScreen(game)); 
       return true; 
      } 
     }); 
     stage.addActor(button2); 

我想在ImageButton的設置圖像繪製,請參閱本link做進一步的瞭解。我怎樣才能做到這一點?我還想要做的是對用戶輸入有任何可見的反應,如改變其大小等。

順便說一下,圖像是圓的。

回答

1
ImageButtonStyle imgBtnStyle=new ImageButtonStyle(); 
     imgBtnStyle.imageUp=new SpriteDrawable(spriteUp); 
     imgBtnStyle.imageDown=new SpriteDrawable(spriteDown); 
     ImageButton imgBtn=new ImageButton(imgBtnStyle); 

添加圖像按鈕階段。在ImageButton Actor上做任何你想做的動作(動作)。

0

你可以像的ImageButton添加圖像,

那就試試這個

Drawable img = getContext().getResources().getDrawable(R.drawable.smiley); 
yourimagebutton.setCompoundDrawablesWithIntrinsicBounds(img, null, null, null); 
+0

這是在xml中,不是嗎?但我想在我的MenuScreen類中完成它。 – user8340536

+0

檢查我的更新回答 –

+1

問題是針對libgdx – Lestat

0

爲了填補按鈕圖像,設置縮放類型FitXY。

button2.setScaleType(ImageView.ScaleType.FIT_XY);

或爲了把圖像中的按鈕的中心,設置秤的類型FitCenter。

button2.setScaleType(ImageView.ScaleType.FIT_CENTER);