Давайте предположим, что у меня есть вид, стоящий на 650 из координаты X и 450 по координате Y на экране Android.Текущий экран Android имеет значение плотности XHDPI .Как мне преобразовать эти значения координат, чтобы они стояли точно в одном месте, скажем, MDPI и XXHDPI ?
Я пытался получить плотностьпроисхождение и перенести его в конечное место и иметь расчет как -> finalSourceDensity / originalDensity и после этого расчета я попыталсяумножить полученные координаты x и y на результат деления чисел, упомянутых выше, но представление все еще имеет много полей, чем необходимо.
Так, например, это код, который у меня есть сейчас.
val densityName = client?.density ?: "mdpi"
val densityFloat = DeviceUtils.getDeviceDensityValue(densityName)
val dm = DisplayMetrics()
windowManager?.defaultDisplay?.getMetrics(dm)
val screenAdjust = dm.densityDpi / densityFloat
val finalX = client?.charX ?: 0f * screenAdjust
val finalY = client?.charY ?: 0f * screenAdjust
Есть подсказка?