Название: Как под android правильно уйти от фиксированного размера окна? Отправлено: navrocky от Январь 04, 2015, 22:32 Если мы как обычно делаем:
Код
То под андроид это окно будет так-же занимать 1024x768 вне зависимости от размеров экрана. Если не указывать размер, то под андроид окно растянется на весь экран, но на десктопе оно будет очень маленьким. Сейчас я в обработчике Component.onCompleted, проверяю Qt.platform.os == "android" и если не оно, то задаю фиксированные размеры окна. Но это кривой костыль на мой взгляд. Хуже того, под WinRT вообще не понять через Qt.platform.os десктопное приложение это или метро на полный экран.. Вот и вопрос, как это делать правильно? Название: Re: Как под android правильно уйти от фиксированного размера окна? Отправлено: NWRUS от Январь 04, 2015, 22:56 Можно через import QtQuick.Window узнать размер экрана. И уже от него плясать.
Но лично мне этот способ не нравится и я делаю так: Код: QScreen *scr = QApplication::screens().at(0); Название: Re: Как под android правильно уйти от фиксированного размера окна? Отправлено: navrocky от Январь 08, 2015, 02:28 Можно через import QtQuick.Window узнать размер экрана. И уже от него плясать. Но лично мне этот способ не нравится и я делаю так: Код: QScreen *scr = QApplication::screens().at(0); Ну на самом деле размер экрана то не проблема узнать - в QtQuick.Window есть объект Screen. Проблема заключается в другом, как мне узнать надо ли отображаться в полном экране или не надо? Т.е. на десктопе приложение может отображаться как в окне, так и на полный экран и этим управляет пользователь, можно задать какой-то предпочтительный размер окна. А вот под android или в ios, winrt приложения полноэкранные и размер окна лучше вообще не трогать иначе окно не будет тянуться на весь экран. Смотрел стандартные примеры, там для окошек которые отображаются корректно и там и там не используется Window, а из плюсового кода создается QQuickView и ему выставляется режим SizeRootObjectToView. Но это же блин неудобно... теряется возможность рулить параметрами окна из QML (заголовок, полноэкранность/оконность, и т.д). Название: Re: Как под android правильно уйти от фиксированного размера окна? Отправлено: Alex Custov от Январь 08, 2015, 10:15 Если мы как обычно делаем: Код
То под андроид это окно будет так-же занимать 1024x768 вне зависимости от размеров экрана Это какое-то окно второго уровня типа диалога? Если нет, то это странно, потому что не должно оно на Андроид/iOS иметь фиксированные размеры. Название: Re: Как под android правильно уйти от фиксированного размера окна? Отправлено: navrocky от Январь 08, 2015, 22:31 Это основное окно QtQuick приложения, оно под андроидом на весь экран и отображается, вот только контент занимает ровно указанный фиксированный размер.
Название: Re: Как под android правильно уйти от фиксированного размера окна? Отправлено: Alex Custov от Январь 09, 2015, 11:19 Это основное окно QtQuick приложения, оно под андроидом на весь экран и отображается, вот только контент занимает ровно указанный фиксированный размер. А версия Qt какая? У меня 5.3.2/5.4, никогда такого не видел (такого и не должно быть) ни в эмуляторах ни в телефоне. Название: Re: Как под android правильно уйти от фиксированного размера окна? Отправлено: navrocky от Январь 14, 2015, 20:34 Да от версии не зависит. Можете запустить пример Maroon на планшете, например. Там будет игра ровно как указано в maroon.qml 320x480 а всё остально залито белым. Хотя там не Window а Item, но проблемы те же.
|