Android: правильные значения размеров для Nexus 5 и Pixel 3a

#android

#Android

Вопрос:

У меня есть проект, в котором я сохраняю размеры в values , values-sw320dp , values-sw400dp и так далее.

Он отлично работает по большей части, за исключением случаев, когда 2 устройства имеют одинаковые sw значения, но разные ppi.

например, Nexus 5 и Pixel 3a принимают размеры от values-sw320dp-xxhdpi . Однако Pixel3a, очевидно, имеет больше пикселей, поэтому он может принимать большее значение dimens.

Однако я не уверен, как разделить его дальше, чтобы оба устройства ссылались на разные размеры. Я также читал онлайн как и на SO, но я не смог найти никаких ссылок на случаи, подобные приведенным выше.

Ценю любые мысли / предложения.

Комментарии:

1. Весь смысл dp в том, что они не зависят от плотности пикселей, то есть имеют одинаковый физический размер. Есть ли причина, по которой вас беспокоит разница в ppi или работа напрямую в пикселях?

2. Я пытаюсь получить правильное значение размера для высоты и ширины для изображения / карты для разных размеров dp, но эти 2 принимают размеры из одних и тех же папок dp, что вызывает беспокойство

3. Размер dp будет таким же, в этом весь смысл использования dp.

4. Я это понимаю. Я говорю, как я могу различать и создавать другую values-swxxxdp папку, чтобы они оба выбирали разные значения

5. Возможно, в моем понимании использования папок sw-dp есть пробел. Возможно, мне нужно использовать размеры по-другому, в чем я не уверен. Я пытаюсь сказать, что, например, 160dp dimen выглядит правильно на Pixel 3a, но не на Nexus 5. Я пытаюсь найти способ, чтобы одно устройство выбирало, скажем, 144 dp, а другое — 160 dp. Я надеюсь, что это имеет смысл