Я знаю, что на эту тему есть тонны вопросов, но я попытался найти тонны постов "android dpi" и прочитать онлайн-документацию, но не нашел точного вопроса, который у меня есть.
Если я хочу создать кнопку (или любой ресурс изображения), который будет занимать одно и то же место на экране на всех устройствах - как мне это сделать?
Я понимаю, что существуют определенные размеры экранов и точек на дюйм, на которые смотрит Android и т. Д., Но я не совсем понимаю, насколько большим должно быть конкретное изображение, чтобы оно выглядело правильно на любом экране.
Скажите, что у меня есть следующие настройки для папок для рисования и макета (Приложение только в альбомной ориентации):
res/drawable-ldpi/button.png (120 dpi)
res/drawable-mdpi/button.png (160 dpi)
res/drawable-hdpi/button.png (240 dpi)
res/layout-small/main.xml - button is set to 100dp
res/layout-normal/main.xml - button is set to 100dp
res/layout-large/main.xml - button is set to 100dp
Скажем, у меня есть кнопка, которой я хочу быть 100dp на любом экране. Следуя правилу масштабирования 3: 4: 6, кажется, что если у меня есть ресурс кнопки шириной 100 пикселей для плотности mdpi, я должен сделать еще одну кнопку для плотности ldpi, равной 75 пикселей, и одну кнопку для плотности hdpi, равной 150 пикселям. Это верно? Я создаю кнопку 75 пикселей на 120 точек на дюйм, кнопку 100 пикселей на 160 точек на дюйм и кнопку 150 пикселей на 240 точек на дюйм, а затем просто говорю android: layout_width = "100dp" во всех трех файлах макета? Или мне сделать все три кнопки 100px с разными точками на дюйм?
А что если у меня исправлена эта кнопка 9? Нужно ли создавать кнопку три раза при 120dpi, 160dpi и 240dpi, каждый из которых имеет размер 100px? Или я просто создаю одну кнопку с 9 исправлениями при 100px и 160dpi и помещаю ее в папку для рисования mdpi?
Онлайн-документация меня немного смущает, поэтому я ищу упрощенный ответ.
Это для Android версии 1.6+ (не новинка для 3.2 и т. Д.)
Спасибо за вашу помощь ... Я просто хочу, чтобы кнопка занимала то же место на 3,7-дюймовом экране, что и 7-дюймовый экран, и не была размытой!