Android получить размер кадра dp
Любой способ получить макет (кадр, линейный...) в дп? Мой FrameLayout настроен на перенос содержимого, поэтому я вычисляю размерность элементов внутри, чтобы получить размерность, но я не уверен в надежности; любое решение? заранее спасибо
1 ответ
Сделать это, как показано ниже
int height = yourLayout.getLayoutParams().getHeight;
int width = yourLayout.getLayoutParams().getWidth;
Это даст вам высоту, ширину в пикселях
Carefull
Напишите этот код после того, как ваш макет (просмотры) успешно создан, в противном случае он вернет 0.
Теперь преобразуйте этот px в dp, используя следующий метод
public int pxToDp(int px) {
DisplayMetrics displayMetrics = getContext().getResources().getDisplayMetrics();
int dp = Math.round(px / (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT));
return dp;
}