Как получить полезную высоту экрана в пикселях

Я настраиваю сетку из 7 столбцов. Я хочу, чтобы он имел 6 строк и заполнил экран. Итак, я пытаюсь найти высоту экрана, исключая панель действий, строку состояния и программные клавиши. Я планирую установить эту высоту, разделенную на 6, как высоту каждой строки. По какой-то причине высота, которую я получаю, не является точной.

DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int height = metrics.heightPixels;

person Jai    schedule 12.06.2019    source источник


Ответы (1)


Это даст вам правильные размеры экрана

 Display display = getWindowManager().getDefaultDisplay();
        Point size = new Point();
        display.getSize(size);

        int width = size.x;
        int height = size.y;
person RAHUL MAURYA    schedule 12.06.2019
comment
Включает ли эта высота actionBar и все остальное? - person Jai; 12.06.2019
comment
Да, и если вы все еще сталкиваетесь с какой-либо проблемой, вы можете проверить эту ссылку stackoverflow.com/questions/24017774/ - person RAHUL MAURYA; 12.06.2019
comment
Хорошо, просто проверьте эту ссылку, надеюсь, вы найдете что-нибудь - person RAHUL MAURYA; 12.06.2019
comment
Не нашел подходящего решения. Что я в конечном итоге делаю, так это помещаю фиктивное представление и получаю его высоту с помощью globalLayoutListener и делаю с ним математику. Возможно, это не очень хорошее решение, но оно сработало для меня! - person Jai; 13.06.2019