【发布时间】:2013-01-26 15:46:04
【问题描述】:
所以我只是想导入一张图片并设置它的位置。我想获取该图像的高度和宽度以正确偏移它,但 getWidth 和 getHeight 方法在我的调试器中返回零。
对为什么会发生这种情况有任何见解吗?
public void setSplashImage(String path)
{
Image splashImage;
splashImage = new Image(new Texture(new FileHandle(path)));
this.screenStage.addActor(splashImage);
this.imagePath = path;
splashImage.setX((float)screenStage.getWidth()/2);
splashImage.setY((float)screenStage.getHeight()/2);
System.out.println("");
}
【问题讨论】:
-
您的代码要求
screenStage宽度,但您的问题是询问splashImage宽度。我怀疑 screenStage 宽度尚未定义,因为 screenStage 尚未调用其setViewport方法? -
啊,是的。 screenstage 已定义.. 我实际发布的代码是一个修订版,我试图弄清楚到底发生了什么.. getHeight 甚至不返回零,所以问题没有实际意义.. 是 getImageHeight返回零并导致混乱..
-
您能否更新您的问题以反映您遇到的问题?这对于遇到此 API 问题的未来 libGDX 用户将更有帮助。或者,如果您认为问题过于本地化,您可以直接关闭该问题。
-
完成:请参阅下面的答案。
-
是的,但 问题 仍然很不稳定。帖子标题说“.getHeight()”有问题,示例代码使用的是“screenStage.getHeight()”。