我在 Andengine相机上使用 FrameLayout 添加按钮。我需要将按钮与andengine相机上的精灵对齐。
我在框架布局中使用重力顶部并添加顶部填充以向下移动按钮。在开发设备上工作。但由于 RatioResolutionPolicy ,在具有不同屏幕尺寸的其他设备上,对齐不起作用。
我想知道如何找到与AndEngine相机坐标完全一致的设备屏幕显示坐标。我试图找出比例并分配填充但不起作用。任何人都可以指导我如何在屏幕显示上找到与AndEngine相机上的坐标完全一致的坐标吗?
两天后真的坚持这个。任何帮助将不胜感激。
我到达最近的是使用这个(按钮移位,但这仍然不准确):
//get actual screen height of device to find ratio
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int height = size.y;
int width = size.x;
//normal ratio logic
int heigntUsedByCamera = width * CAMERA_HEIGHT / CAMERA_WIDTH;
int requiredPaddingForBtnOnFrameLayout = (height - heigntUsedByCamera)/2;
在这个中,我希望按钮X正好是CAMERA开始的地方
这里出了什么问题?
或者是否有更好的方法在AndEngine相机中添加原生按钮?
答案 0 :(得分:1)
因为,大部分时间都在发生,我自己找到了解决方案。
就像我在我的问题中提到的,上面的代码让我得到了接近但不准确的结果。我认为偏差是因为我将按钮缩放到0.6f。删除了缩放,它工作正常。