我拍摄了一个带有以下代码的图像按钮:
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);
我想将图像按钮中的图像设置为可绘制,请参阅此link以进一步了解。我怎样才能做到这一点?我还想做的是对用户输入有任何明显的反应,比如改变它的大小等。
顺便说一下,图像是圆的。
答案 0 :(得分:1)
ImageButtonStyle imgBtnStyle=new ImageButtonStyle();
imgBtnStyle.imageUp=new SpriteDrawable(spriteUp);
imgBtnStyle.imageDown=new SpriteDrawable(spriteDown);
ImageButton imgBtn=new ImageButton(imgBtnStyle);
将图像按钮添加到舞台。在这个ImageButton Actor上做你想做的任何动画(动作)。
答案 1 :(得分:0)
您可以在图像按钮中添加图像,
然后尝试这个
Drawable img = getContext().getResources().getDrawable( R.drawable.smiley );
yourimagebutton.setCompoundDrawablesWithIntrinsicBounds( img, null, null, null);
答案 2 :(得分:0)
要在按钮中填充图像,请设置缩放类型FitXY。
button2.setScaleType(ImageView.ScaleType.FIT_XY);
或要将图像放在按钮的中央,请设置比例类型FitCenter。
button2.setScaleType(ImageView.ScaleType.FIT_CENTER);