Неправильный размер Android DIP
Этот одурачивает меня. Что я пропускаю? Мне нужна кнопка шириной ровно в один дюйм на любом экране плотности. Я заявляю это в макете следующим образом:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:width="160dip"
android:text="How wide?"
/>
Я получаю кнопку шириной 7/8 дюйма на всех экранах, а не ожидаемый 1 дюйм. Разница может быть, поле или отступ вокруг кнопки? Если так, как установить это в ноль?
2 ответа
dip основаны на виртуальных плотностях, а не на реальных физических плотностях. Например, на T-Mobile G1 физическая плотность дисплея устройства составляет около 180 точек на дюйм, но мы рассматриваем его как дисплей с разрешением 160 точек на дюйм. В настоящее время Android использует 3 "сегмента плотности", 120, 160 и 240. Каждое устройство использует все, что является наиболее подходящим. Если вы хотите точные физические измерения, используйте физические единицы, такие как дюймы, мм и т. Д.