Поддержка разных размеров и плотностей
У меня есть просмотрщик с изображениями, и я установил его так:
mViewPager.setPageMargin((int) getActivity().getResources().getDimension(R.dimen.view_pager_margin));
<dimen name="view_pager_margin">-250dp</dimen>
Теперь я создал следующие файлы измерений:
Но когда я запускаю эмуляторы Nexus 5X и Nexus 6P, они оба совместно используют файл dimensions.xml(xxhdpi), и изображения не выглядят хорошо на обоих. Каков наилучший подход, чтобы мои изображения могли выглядеть так, как они должны выглядеть на каждом устройстве?
1 ответ
Согласно https://design.google.com/devices/, 5X и 6P имеют размеры 411 дп х 731 дп. Тем не менее, 5X - это устройство xxhdpi, тогда как 6P - это устройство xxxhdpi, поэтому они на самом деле используют разные файлы Dimens.xml.
Я бы порекомендовал определить ваши размеры.xml на основе фактических размеров экрана, а не плотности экрана. Например, Dimens-w400dp.xml будет применяться к обоим устройствам.
https://developer.android.com/guide/practices/screens_support.html