Russian Qt Forum

Qt => Общие вопросы => Тема начата: Гурман от Апрель 03, 2014, 14:07



Название: Qt и Android
Отправлено: Гурман от Апрель 03, 2014, 14:07
Искал подходящую тему, не нашел. В Linux раздел не хочу писать, там люди конкретные вопросы задают, да и Android это не совсем Linux. Если есть более подходящее место, просьба модераторам перенести или приклеить к другой теме.

Как известно, с недавних пор Qt для Android вполне официально существует. Я себе на планшет с 4.2 ICS поставил обе демки Qt из Google Play Market. Обе они "Андроидные", то есть, не оконные, с большими кнопками, рисованной подгруженной графикой и т.д. А что насчет переноса оконных приложений, например с Windows? Сорри, углубленно про Necessitas я не изучал, поэтому не представляю себе, есть ли какие-то ограничения при портировании приложения из оконной среды вроде Windows или KDE в "экранный" Android? Что там получится из окон? У меня есть приложение, которое несколько окон одновременно открывает на экране, их можно по нескольким мониторам раскидать, и работать как нравится. А как это выглядело бы на экране Android? Он ведь не поддерживает окна. Или Qt их там сам сделает? Увы, в текущей работе нет необходимости что-то портировать, или просто делать Android-приложения, поэтому просьба - кто уже имеет такой опыт, реально работает, расскажите, поделитесь. Может мне пригодится, может кому-то еще.


Название: Re: Qt и Android
Отправлено: _OLEGator_ от Апрель 03, 2014, 14:54
Из моего опыта могу сказать, что много окон сделать не получится - окно по умолчанию растягивается на всю область и его размер нельзя изменить. Как вариант можно загнать все окна в одну сцену и отображать ее.


Название: Re: Qt и Android
Отправлено: Гурман от Апрель 03, 2014, 15:08
Из моего опыта могу сказать, что много окон сделать не получится - окно по умолчанию растягивается на всю область и его размер нельзя изменить. Как вариант можно загнать все окна в одну сцену и отображать ее.

ну размер изменить нельзя - это очевидно

а переключаться между окнами приложения тоже нельзя, если окна не модальные? ну пусть каждое на весь экран (хотя это будет ужос), но хотя бы переключаться между ними можно?

а если на главном окне приложения есть QMdiArea - окна внутри этого виджета как выглядят?



Название: Re: Qt и Android
Отправлено: _OLEGator_ от Апрель 03, 2014, 15:31
Mdi-окна не знаю, переключаться вроде можно.


Название: Re: Qt и Android
Отправлено: carrygun от Апрель 04, 2014, 04:45
QStackedWidget работает нормально. А вот с клавиатурой зато у меня беда. Она не стандартная, а от производителя смарта, в общем из-за этого походу ведет себя неадекватно.


Название: Re: Qt и Android
Отправлено: Fregloin от Апрель 08, 2014, 09:38
Не знаю, я когда писал widget приложение под андроид, то окна у меня могли отображаться друг над другом обычно, но без заголовков. Выглядит мягко говоря не очень.
Задача смарта как раз что работа с пользователем идет через 1 активное окно и макс 1 диалоговое модальное. Поэтому можно переделать иерархию ваших окон.


Название: Re: Qt и Android
Отправлено: Гурман от Апрель 08, 2014, 14:34
Не знаю, я когда писал widget приложение под андроид, то окна у меня могли отображаться друг над другом обычно, но без заголовков. Выглядит мягко говоря не очень.
Задача смарта как раз что работа с пользователем идет через 1 активное окно и макс 1 диалоговое модальное. Поэтому можно переделать иерархию ваших окон.

Это всё хорошо для смартов. Но не смартами едиными... - на 10" HD экране такой интерфейс выглядит по-дурацки, с непроизводительным использованием ресурсов экрана. Нужно, чтобы были нормальные окна. Вот интересно - хотя бы внутри MDI на Android получаются с Qt нормальные окна?


Название: Re: Qt и Android
Отправлено: fems от Апрель 08, 2014, 14:50
А что насчет переноса оконных приложений, например с Windows?
можно http://www.youtube.com/watch?v=ltZ01zZF9o4
Цитировать
В видео показаны необходимые шаги и настройки для сборки обычного desktop-приложения под ОС Android. Также продемонстрированы основные способы отладки приложений под Android: отладка на виртуальном устройстве (AVD) и отладка на реальном физическом устройстве (USB debugging).