红色方块是按钮的边界,而图像保持居中于32x32px。我尝试使用button.getImage()将位置和大小设置为按钮的值,但它似乎没有任何效果。
答案 0 :(得分:5)
只需使用常规Button
即可。它的背景也包含一个Drawable
,但是它总是被拉伸以填充按钮。请参阅JavaDoc for ImageButton
:
...如果图像是按钮的大小,则可以使用没有任何子项的按钮,其中
Button.ButtonStyle.up
,Button.ButtonStyle.down
和Button.ButtonStyle.checked
九个修补程序定义图像
请注意,这些实际上不需要9个补丁;任何Drawable
都可以。
答案 1 :(得分:2)
可能超级晚了,但你试过了吗?
yourButton.getImage().setFillParent(true);
答案 2 :(得分:0)
扩展@xitnesscomplex的答案:
您可以使用yourButton.getImage().setFillParent(true);
来设置大小。
设置偏移量有点违反直觉
ImageButton.ImageButtonStyle style = new ImageButton.ImageButtonStyle();
style.imageUp = new TextureRegionDrawable(new Texture(Gdx.files.internal(btn.png")));
ImageButton yourButton = new ImageButton(style);
style.unpressedOffsetX = -new_brush.getWidth()/4.0f;
style.unpressedOffsetY = -new_brush.getHeight()/4.0f;
style.pressedOffsetX = -new_brush.getWidth()/4.0f;
style.pressedOffsetY = -new_brush.getHeight()/4.0f;
style.checkedOffsetX = -new_brush.getWidth()/4.0f;
style.checkedOffsetY = -new_brush.getHeight()/4.0f;
yourButton.getImage().setFillParent(true);