Android-移动布局/图像视图的正确方式

Android-移动布局/图像视图的正确方式,android,android-layout,Android,Android Layout,首先为我的英语道歉。我开始用android开发游戏,我做了一个类似朋友婚礼的测试 在不同的设备上测试,我看到的是: 在三星Galaxy和Neo N003中,我想更多的设备都会出现这种情况,无论android的版本如何,当鲨鱼从龙卷风中发射出来时,它们是看不见的,但它们击中了播放器 我用Nexus5做了大部分测试,它可以按照我的要求工作。 对于其他设备,启动Shark通常比Nexus5快,但效果很好 以启动sharks为例,但基本上问题主要集中在移动任何布局/图像视图上 虽然我尝试了不同的方法,但

首先为我的英语道歉。我开始用android开发游戏,我做了一个类似朋友婚礼的测试

在不同的设备上测试,我看到的是:

在三星Galaxy和Neo N003中,我想更多的设备都会出现这种情况,无论android的版本如何,当鲨鱼从龙卷风中发射出来时,它们是看不见的,但它们击中了播放器 我用Nexus5做了大部分测试,它可以按照我的要求工作。 对于其他设备,启动Shark通常比Nexus5快,但效果很好 以启动sharks为例,但基本上问题主要集中在移动任何布局/图像视图上

虽然我尝试了不同的方法,但我还是像以前一样放置了一个示例代码:

tiburon.animate.translationXx.translationYy.setInterpolator新建LinearInterpolator.setDurationVelociatedTiburon Final ObjectAnimator animX=ObjectAnimator.offload shark,translationX,x; 也使用相同的ObjectAnimator,但使用x而不是translationX和Y。 我还尝试了带有计算值的TranslateAnimation​​或者是亲戚。 我还尝试了layoutParams.leftMargin。 我还直接尝试了setX和setY。 但我认为这不是正确的方法,因为取决于我是否使用其中一种,它并不能在所有设备上都同等工作。也许问题不在于我的方式,也许是我如何计算像素的位置,dps,但我再次尝试了不同的方法,但在不同的设备之间仍然有所不同

也许我不需要像这个游戏中的背景那样直接移动布局/图像,在画布上使用同步的surfaceHolder和绘画。但是我想知道你必须这么做,因为对于这么简单的东西,我认为如果它们直接移动布局/图像视图,对于任何设备都应该是一样的

我还想知道问题是否会出现在动作/动画的持续时间内,也许我需要根据设备的大小进行不同的处理


感谢和问候

我回答了我的问题,因为我已经找到了原因。当我将手机植入根目录后,我修改了Nexus5中的一些开发选项,使其更快。我已将选项从1x更改为1.5x,因此性能有所不同:

Windows动画缩放。 过渡动画比例。 动画师持续时间比例。
亲切问候。

这不需要root,它在开发者选项中。至少在我的设备上