Я пытаюсь установить ширину заготовки для представления. «In», «mm» и «pt» независимы от плотности и одинакового размера на каждом устройстве, или я ошибаюсь? Моя ширина вид должен быть 141.3pt/49.8mm, поэтому я ставлю в XML андроида: layout_width = «141.3pt» или с помощью кода:Установка фиксированной ширины размера изображения с pt/mm/in ANDROID
float requiredPx = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_PT, (float) 141.3, dm);
ViewGroup.LayoutParams params = mRequiredSizeLine.getLayoutParams();
params.width = (int)requiredPx;
mRequiredSizeLine.setLayoutParams(params);
Дело в том, что это нормально, на некоторых устройствах (на большинстве из них), но, например, на Samsung Galaxy Stratosphere 2 это не нормально. Также я есть метод, который расчета экрана ширины дисплея в в и мм
private double checkDeviceWidthInInches(){
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
double x = Math.pow(dm.widthPixels/dm.xdpi,2);
double y = Math.pow(dm.heightPixels/dm.ydpi,2);
return Math.sqrt(x);
и вы можете заметить с первого изображения ниже, это тоже неправильно (это не возможно ширина экрана, чтобы быть 76 мм).
Image of Samsung Galaxy Stratosphere 2 (ЭТО НЕПРАВИЛЬНО) и Image of Samsung Galaxy S4 (ЭТО ПРАВИЛЬНО)
Так что же вы думаете? Может быть какая-то проблема с устройством или? Ссылка для спецификации прибора http://www.samsung.com/us/mobile/cell-phones/SCH-I415SAAVZW
Любое предложение? Спасибо
Это не решение. Повторите мой вопрос, я внес некоторые изменения. – nikolaDev
Какова причина, по которой вы действительно хотите использовать pt/mm/in? –
Ну, из ссылки, которую вы предоставили, говорится, что pt/in/mm - единицы измерения, которые имеют одинаковый физический размер на каждом экране, и это то, чего я хочу достичь. Ширина должна быть FIX на каждом устройстве. Но, как вы можете видеть, странная вещь на этом устройстве заключается в том, что метод возвращает неправильный размер физической ширины, поэтому мне интересно, является ли устройство проблемой? – nikolaDev