2012-06-19 8 views
3

Я хочу показать свое приложение только в портретном режиме. Я должен ограничить ландшафтный режим в своем приложении.Как заблокировать ландшафтный режим в приложении j2me?

Для каждого устройства есть отдельные атрибуты.

Для Nokia, Nokia-MIDlet-App-Orientation: Portrait. Для Samsung, MIDlet-ScreenMode: Портрет.

После добавления в JAD я попытался установить его в Nokia C5. Я не могу установить его. Я получаю Обязательный атрибут отсутствует ошибка, потому что пользовательское свойство JAD не должно начинаться с MIDlet-. Я не могу установить его из-за MIDlet-ScreenMode: Portrait.

Есть ли общий код для блокировки ландшафтного режима на все устройства, таких как Nokia, LG, Motorola, Samsung и т.д.,

+0

Укажите, какую структуру вы используете? – Lakshmanan

+0

В простой j2me мне нужно заблокировать ландшафтный режим. –

ответ

3

Там нет никакого способа в MIDP, чтобы заблокировать приложение к ориентации. Обычно это осуществляется через собственные параметры JAD на разных устройствах. Вам нужно выяснить, какие параметры для устройств вы хотите настроить, и добавить их в JAD.

Некоторые способы сделать это в ответ на вопрос this question.

+0

Я попытался ** устройства Nokia: ** Nokia-MIDlet-App-ориентация: Пейзаж ** Samsung устройство: ** MIDlet-ScreenMode: Пейзаж –

+0

Спасибо за ваш ответ funkybro. У меня есть некоторые проблемы с этим. Когда я использую ** MIDlet-ScreenMode: Landscape **, я не могу установить приложение в Nokia C5. Он показывает «Обязательный атрибут отсутствует», потому что пользовательские свойства не должны начинаться с ** Мидлет - **. Затем, как я могу использовать ** MIDlet-ScreenMode: Landscape **? –

+1

Хе-хе, я думал, что это произойдет. Теперь вам нужно будет сделать отдельные дистрибутивы для каждого устройства! Разве J2ME не смеется в минуту? – funkybro

0

Если ваш графический интерфейс приложений реализован на основе Canvas, вы можете сделать это программно. В этом другом ответе Create Landscape Game Canvas for Asha 303 Я показываю, как сохранить ландшафтный режим, но тот же принцип можно использовать, чтобы приложение выглядело как портрет.

+0

Telmo Pimentel Mota, Спасибо за ваш ответ. Я не использую холст. Возможно ли с использованием холста? –

+0

Если вы используете LCDUI, это невозможно. Если вы используете некоторую инфраструктуру пользовательского интерфейса (например, LWUIT), вам придется проверить документацию по инфраструктуре. –

0

Это немного напряженный процесс, но вы можете добавить слушателя ориентации, и когда ориентация изменится, вы можете установить значение ориентации обратно на портрет.