Итак, у меня есть анимированный вид, который я хочу вернуть в центр экрана после завершения анимации.Я использую этот код, чтобы переместить центр вида в центр экрана:
val screencenterX = (FullscreenActivity.metrics.widthPixels - mContentView.width) / 2
val screencenterY = (FullscreenActivity.metrics.heightPixels - mContentView.height) / 2
val soultostartx = ObjectAnimator.ofFloat(mContentView, "x", screencenterX.toFloat()).apply {
duration = 1
}
val soultostarty = ObjectAnimator.ofFloat(mContentView, "y", screencenterY.toFloat()).apply {
duration = 1
}
fun toStart() = AnimatorSet().apply {
play(soultostartx).with(soultostarty)
start()
}
toStart()
Это прекрасно работает в портретном режиме, но как только телефон поворачивается в горизонтальное положение, рассматриваемый вид перемещаетсягде-то в нижней левой четверти экрана вместо этого.Есть идеи, почему это может быть?Математика для получения центра экрана должна быть одинаковой или нет?