Форум программистов, компьютерный форум CyberForum.ru

Размер экрана без шапки - Android

Войти
Регистрация
Восстановить пароль
 
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,488
09.08.2013, 05:42     Размер экрана без шапки #1
Создаю диалог вручную. Нужно знать точный размер экрана без учета панели с батареей, вай-фаем, связью, иконками...
Как узнать полный размер - знаю:

Java
1
2
3
        Display display = context.getWindowManager().getDefaultDisplay();
        int width  = display.getWidth();
        int height = display.getHeight();
Но как отрезать шапку? Хочу сделать отступ от бортиков МОЕГО приложения в 5 мм, а если кидаю в центр, то либо лезет выше на шапку либо делает слишком большой отступ снизу... Могу задать координаты и размер вручую, но не знаю сколько.

p.s. нужно получить координаты прямоугольника рабочей области, т.к. экран можно развернуть во время работы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2013, 05:42     Размер экрана без шапки
Посмотрите здесь:

Android Скриншот экрана
Ориентация экрана Android
Android Физический размер экрана
Android Поворот куба сначала вокруг оси y с.к. экрана потом вокруг оси x с.к. экрана
Android Размер шрифта, размер контролов
Android Размер кнопок, не пойму что влияет на их размер
Как сделать скриншот экрана без прав Root-а? Android
Android Как подгонять размер диалоговых окон по размер экрана?
Android Как автоматически изменять размер текста в spinner в зависимости от размера экрана?
Android Как сделать так, чтобы мобильное приложение автоматически подстраивалось под размер экрана?
Android RecyclerView создает Item на размер экрана, как исправить?
Android Узнать доступные координаты (размер экрана)

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
verylazy
Заблокирован
09.08.2013, 10:24     Размер экрана без шапки #2
Java
1
2
3
4
5
6
           int result = 0;
           int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
           if (resourceId > 0) {
              result = getResources().getDimensionPixelSize(resourceId);
           }
           System.out.println(result);
У меня работает вот такой код. Вставил в onCreate, сразу после super(); хотя он работает даже если уже спрятан статус бар.
Я сначала с ним игрался, а потом просто посидел - подумал крепко и переделал лейауты так, что бы даже при наличии статус бара все было тип-топ, но это частный случай.
Источник кода http://mrtn.me/blog/2012/03/17/get-t...ar-in-android/
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,488
09.08.2013, 13:37  [ТС]     Размер экрана без шапки #3
Спасибо! заработало...
А то я нашел только такое:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        int width;
        int height;
        Display display = context.getWindowManager().getDefaultDisplay();
        width  = display.getWidth();
        height = display.getHeight();
 
        int myHeight = 0;
        DisplayMetrics metrics = new DisplayMetrics();
        context.getWindowManager().getDefaultDisplay().getMetrics(metrics);
        int DENSITY = metrics.densityDpi;
        int TH;
        if (DENSITY == DisplayMetrics.DENSITY_HIGH) {TH = 48;} else
        if (DENSITY == DisplayMetrics.DENSITY_MEDIUM) {TH = 32;} else
        if (DENSITY == DisplayMetrics.DENSITY_LOW) {TH = 24;} else
        {TH = 0;}
        height = height - TH;
А это явно не предусматривает все коомбинации...
Yandex
Объявления
09.08.2013, 13:37     Размер экрана без шапки
Ответ Создать тему
Опции темы

Текущее время: 10:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru