1
我正在使用NinePatchDrawable創建一個圖像,並嘗試使用rotateBy方法簡單地旋轉它,但它不是以某種方式旋轉。我使用下面的代碼片段:來自NinePatchDrawable的Libgdx Scene2d圖像不旋轉
TextureAtlas ninePatchAtlas = game.getAssetsInterface().getTextureAtlas(Constants.GAME_ATLAS);
AtlasRegion region = ninePatchAtlas.findRegion("drawPatch");
NinePatch ninePatch = new NinePatch(region, 59, 59, 59, 59);
NinePatchDrawable ninePatchDrawable = new NinePatchDrawable(ninePatch);
Image image = new Image(ninePatchDrawable);
image.setOrigin(image.getWidth()/2, image.getHeight()/2);
image.setPosition(200, 400);
image.setWidth(150);
image.rotateBy(45);
旋轉工作,如果我用另一個可繪製的,而不是對NinePatchDrawable圖像的構造。有沒有人面臨同樣的問題?
NinePatch不支持旋轉。你將不得不繼承它並重寫它的繪製方法來使它工作。圖像僅支持實現TransformDrawable的Drawable上的旋轉(其中TextureRegionDrawable是唯一的,除非您創建自己的)。 – Tenfour04 2014-12-02 01:29:47
在這些情況下,它也可能有助於將其封裝在表中,對其使用setTransform(true),並旋轉表。 – noone 2014-12-02 05:08:16