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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
overmind.pro
5 / 5 / 0
Регистрация: 18.01.2012
Сообщений: 19
#1

Orientation в зависимости от пропорций экрана - Программирование Android

02.09.2014, 23:13. Просмотров 1010. Ответов 7
Метки нет (Все метки)

Пишу приложение, которое должно автоматически выбирать ориентацию изображения в зависимости от пропорций экрана. В активити сделал следующее:
Java
1
2
3
4
5
6
        Display display = ((WindowManager)this.getWindowManager()).getDefaultDisplay();
        int height = display.getHeight();
        int width = display.getWidth();
        int portrait = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT;
        int landscape = ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE;
        this.setRequestedOrientation(height>=width ? portrait : landscape);
На эмуляторе работает правильно, на мобиле 4.2.2 тоже, а на TV Box 4.2.2 не поворачивает как надо. А приложение как раз и пишется для вертикально висящего телевизора.
В чем может быть проблема? Или может кто посоветует другое решение данной проблемы?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.09.2014, 23:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Orientation в зависимости от пропорций экрана (Программирование Android):

Масштабирование картинки в зависимости от разрешения экрана - Программирование Android
как программно масштабировать картинку в зависимости от разрешение экрана?

Изменение размера картинок в зависимости от разрешения экрана - Программирование Android
Пишу приложение на Java для Android. Столкнулся с проблемой, что при использование шаблона xml для стандартных размеров экрана 480*800...

Как автоматически изменять размер текста в spinner в зависимости от размера экрана? - Программирование Android
Здравствуйте. В программе использую две темы светлую и темную: <style name="BlackTheme" parent="android:style/Theme.Holo"> <item...

Activity в Portrait/Landscape Orientation с разными фрагментами - Программирование Android
Подскажите, как реализовать два разных фрагмента в Activity в Portrait/Landscape Orientation. Нужно, чтобы в Portrait загружался один...

управление шириной и высотой изображения в зависимости от его пропорций - JavaScript
Всем по привету! Такой вопрос есть вот это <img id="icon"> Нужно на джаве определить следующее если width > height рисунка...

Масштабирование в зависимости от ширины экрана - jQuery
Есть фиксированный, неадаптивный макет: мой проект. (рекламных целей не преследую!). На экранах высотой где-то 768px, становится не видно...

7
kirawa
34 / 34 / 1
Регистрация: 12.11.2013
Сообщений: 338
03.09.2014, 08:46 #2
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public  boolean isTablet(Context paramContext) {
        if (!isTabletModeDetermined) {
            if (paramContext.getResources().getConfiguration().smallestScreenWidthDp >= 600)
                isTabletMode = true;
            isTabletModeDetermined = true;
        }
        return isTabletMode;
}
 
 
 
 
if (isTablet(context)){
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        }else {
            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        }
    }
0
overmind.pro
5 / 5 / 0
Регистрация: 18.01.2012
Сообщений: 19
03.09.2014, 14:59  [ТС] #3
На этом TV-box, экран не поворачивается, что ставлю:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
что ставлю:
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
что в манифесте выставляю любую ориентацию, экран остается LANDSCAPE
Может в этом TV-box это как-то в ядре заблочено, ну типа телевизор, ему не нужен поворот экрана, и возможность поворота заблокировали?
Ребят выручайте, срочно надо, программа написана, а сдать не могу(
Может как-то можно обойти данную блокировку, или повернуть экран другими способами?

Добавлено через 4 часа 34 минуты
В общем я проверил, на TV-box, как бы я не переключал ориентацию
getResources().getConfiguration().orientation всегда остается равным Configuration.ORIENTATION_LANDSCAPE
Что делать? Как разблочить сие чудо?
0
Spelcrawler
527 / 497 / 111
Регистрация: 12.03.2014
Сообщений: 1,649
Завершенные тесты: 1
03.09.2014, 20:34 #4
Нарисовать все наоборот) Под углом 90 градусов. Или прошивку колупать.
0
CoolMind
419 / 402 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
03.09.2014, 22:00 #5
overmind.pro, а что, у телевизора тоже есть гироскоп?
Ну или считывайте ширину и высоту экрана и ориентируйтесь по ним.
0
Netscape
373 / 360 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
03.09.2014, 23:30 #6
Зачем такие костыли?
Есть же layout-land/layout-port
0
Andrew0683
Сообщений: n/a
13.10.2014, 11:57 #7
Здравствуйте. Столкнулся с той же задачей.
Хочется узнать получилось ли Вам ее решить?
overmind.pro
5 / 5 / 0
Регистрация: 18.01.2012
Сообщений: 19
13.10.2014, 12:43  [ТС] #8
Не получилось, пришлось переориентировать приложение под LANDSCAPE.
0
13.10.2014, 12:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.10.2014, 12:43
Привет! Вот еще темы с ответами:

Действие в зависимости от разрешения экрана - JavaScript
Уже весь интернет просмотрел по этому вопросу, не подскажите почему второй скрипт не работает в отличии от первого? В первом скрипте...

Переадресация в зависимости от разрешения экрана - JavaScript
Есть код, который проверяет разрешение экрана пользователя и в зависисмости от него посылает (или не посылает) на мобильную версию. ...

Отображение содержимого в зависимости от размера экрана - HTML, CSS
На странице есть два дива, необходимо в зависимости от размеров экрана отображать первый, когда страница по ширине больше 480 и второй,...

Блок съезжает (в зависимости от разрешения экрана) - HTML, CSS
Добрый день, при разном разрешении экрана блок с авторизацией то съезжает вниз, то наоборот не достаёт до конца первого фона. ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

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