我正在开发一个使用Korge游戏引擎的游戏。
我试图更改NinePatch的宽度,它附加到一个FixedSizeContainer上,但是在运行这段代码时,NinePatch图像的边会被扭曲。
val scoreBg=ninePatch(resourcesVfs["gamescreen/scorebg.9.png"].readNinePatch(),
40.0,30.0){}
.position(40.0,40.0) //<-- rendering correctly
val score=text("0",font = font).centerOn(scoreBg)
val scoreUpdateFun:(score:Int)->Unit = {
val text="$it"
val len=text.length
scoreBg.width=30+len*10.0//<---- changes width but distorts sides
score.text="$it"
}
scoreUpdateFun(100)改变宽度/高度的正确方法是什么?
更新-1
通过Korge 文档,我使用了NinePatch的扩展版本,它使用KorIM的NinePatchBitmap32,它与IntelliJ 9补丁位图兼容。
当我从NinePatch转到普通NinePatchEx时,它工作得很好。但是我不能直接使用9补丁位图。
我将代码更改为
val scoreBg=ninePatch(
atlas["scorebg2.png"],40.0,30.0,
53.0/119.0, 47.0/101.0, 52.0/119.0, 47.0/101.0)
.position(40.0,40.0)更新-2
我发现了一个与我的问题相关的开放的问题
我的游戏是使用Korge版本的1.13.9.0
发布于 2020-07-11 13:50:57
https://stackoverflow.com/questions/62813788
复制相似问题