有人可以给我画一张 xdelta 在横向模式下如何工作的图片吗?

Can somebody please draw me a pic on how xdelta work in landscape mode?

我想用翻译动画来实现一个菜单,但我完全迷失在 xxx% 的事情上。我想使用百分位数,因为我希望该应用程序能够在具有各种分辨率的设备上运行。

问题是我似乎无法弄清楚哪个百分比对应于哪个屏幕位置。

例如,200% 似乎仍在屏幕上,-50% 不在屏幕外?

是否有一套统一的规范,或者取决于 OEM 如何将 android 内核移植到他们的设备上?例如 Nexus 设备的 50% 与三星的 50% 不同???

这是有问题的动画代码:

<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator"
android:fillAfter="true">

<translate
    android:fromXDelta="200%"
    android:toXDelta="160%"
    android:duration="5000" />
</set>

编辑:

更糟糕的是,整件事似乎与"constraintLayoutParams.leftMargin"有关。似乎每当我形容 constraintLayoutParams.leftMargin 时,百分比 (xx%) 也会发生变化。

来自 https://developer.android.com/guide/topics/resources/animation-resource.html

垂直 and/or 水平运动。支持以下三种格式的任意一种属性: -100 到 100 以“%”结尾的值,表示相对于自身的百分比;从 -100 到 100 的值以“%p”结尾,表示相对于其父项的百分比;没有后缀的浮点值,表示绝对值。

visit the link for more details.