четверг, 4 сентября 2014 г.

Что нового в XE7 или сравнение с XE6...

Традиционный пост к новой версии среды разработки. Учитывая огромную популярность предыдущего поста про XE6, я просто обязан написать новый. Пост обновляется по мере изучения среды и новых находок. Сравнение происходит с предыдущей версией, в данном случае с Delphi XE6 Update 1.

Обновление 17:54 МСК 5.09.14 Новый компонент MultiView

18.09.14 Java to Pascal Converter

Кратко: Установка, дизайнер форм, компилятор, свойства формы (FullScreen), Multi-Touch Support, Splash Screen, MultiView, баги.


Установка:
Тут всё как обычно. Предыдущая версия удаляется не полностью, оставляя около 5 Гб файлов. Про реестр я вообще молчу…
Установка новой версии. При запуске, может показаться, что установка зависла, но на самом деле за главным окном появилось маленькое окошко для выбора языка, чтобы увидеть его и продолжить установку, нажмите Alt+Tab. По времени, всё происходит также долго, как и раньше.

Дизайнер форм:
В целом идея класс, но вот размеры форм теперь не дают реального представления об отображении вашего приложения на том или ином девайсе. Интересно, что сохранившиеся шаблоны для iPhone 3.5 и 4 дюйма, отображаются также как и в XE6. Лучше бы сохранили готовые шаблоны для всех девайсов.

Если кто-то знает объяснение этому (может, я что-то упустил или я слишком привык к старому дизайнеру форм), то напишите в комменты.

Если сравнить форму (например, 4.2 дюйма) созданную в XE6 и форму(4 дюйма) из XE7, то вы сильно удивитесь, т.к. форма (4 дюйма) почти в два раза больше, чем старая. Или создаём в XE7 форму 3.5 дюйма и видим, что она почти в "два раза" меньше формы 3.2 дюйма из XE6.

Далее...
Удалять компоненты с формы можно только в режиме Master просмотра, попытка удалить любой компонент с формы в режиме отличном от Master приведёт к ошибке. Тоже касается и блока Structure, только там более подробно расписана ошибка.



Компилятор:
Приложения под Android компилятся намного быстрее, чем раньше.

Свойства формы:
Form1.FullScreen - Недавно, я писал заметку о том, как убирать статус бар, так вот в XE7 такая возможность идёт из коробки. Проверил, работает отлично.

Multi-Touch Support:
Событие OnTouch. Работает отлично, использовать проще простого, ловит все 10 касаний. На скрине 5 касаний. Пример: XE7: Multi-Touch Support

Splash Screen:
Установить и настроить можно тут "Project > Options > Application", рекомендации читаем тут.
Попробовал, вроде работает :)

MultiView Component:
Удалось попробовать, пока только демку (лежит тут C:\Users\UserName\Documents\Embarcadero\Studio\15.0\Samples\Object Pascal\Mobile Samples\User Interface\MultiView). С помощью данного компонента можно создавать любые менюшки для вашего приложения. Очень понравилось, как всё работает. Пример в справке: Mobile Tutorial: Using a MultiView Component to Display Alternate Views of Information (iOS and Android)


Комментарии приветствуются.


Исправили баги:
- Исправили баги с удалением и изменением значений в TNumberBox и TSpinBox
- Вернули вкладку для настройки ориентации приложения, но у меня она работает как-то странно…
Выставляем:
  • Portrait и Landscape home right - приложение не вертится.
  • Portrait, Landscape home right, Landscape home left - приложение не вертится.
  • Portrait, Upside down, Landscape home right, Landscape home left - приложение вертится, всё кроме "Upside down".
В чём фишка с ориентацией? Создал рапорт QC 127349

- Исправлен баг QC 127004 TLang
- Исправлен баг QC 121702, но у меня он воспроизводится, поэтому не знаю, что там исправили… Видео и логи в процессе создания...

Баги:
- QC 121702 проявляется после второго, третьего или четвёртого запуска приложения Последняя попытка в логах не фиксируется. Добавил рапорт в QC 127337
Пример логов: на третий раз приложение не запустилось, Скачать логи
Видео
- QC 127349. Ориентация. Провёл кучу тестов, поведение, как мне кажется не правильное, создал рапорт, подождём официального коммента.

9 комментариев:

  1. Наконец-то Portrait и Landscape - пофиксили, а то не понятно сначала было.
    и еще вопрос, а как можно с тобой связаться, а то хотелось бы узнать как работать с формами. ну чтоб работая в одной, открыть вторую, разрушить первую, потом открыть третью, разрушить вторую, а то открывать получается а как правильно разрушать хз. :)

    ОтветитьУдалить
    Ответы
    1. Вы можете задать свой вопрос на форуме: fire-monkey.ru и вам отвечу либо я, либо ещё кто-то.

      Удалить
  2. У Вас отличный, познавательный блог.
    Большое спасибо!
    Kitty.

    ОтветитьУдалить
    Ответы
    1. Спасибо за отзыв. Приятно знать, что блог приносит пользу.

      Удалить
  3. Перестали работать куки в браузере(андроид) на некоторых сайтах ..... в xe6 работали

    ОтветитьУдалить
  4. В ХЕ7 появился новый компонент для работы с Bluetooth. Не могу найти внятного примера работы с ним, может быть вы подскажете?

    ОтветитьУдалить
    Ответы
    1. Сам пока не пробовал, поэтому подсказать могу только официальные примеры.
      Справка: http://docwiki.embarcadero.com/RADStudio/XE7/en/Using_Bluetooth
      Примеры:
      C:\Users\Public\Documents\Embarcadero\Studio\15.0\Samples\Object Pascal\Mobile Samples\Device Sensors and Services\Bluetooth
      C:\Users\Public\Documents\Embarcadero\Studio\15.0\Samples\Object Pascal\RTL\Tethering

      Удалить
  5. Этот комментарий был удален автором.

    ОтветитьУдалить
  6. Здравствуйте Андрей.
    СпасиБО Вам за ваш блог. Очень познавательный и нужный.
    Скажите пожалуйста правильно ли я понимаю что если удалять компоненты можно только в режиме мастера в котором обычное прямоугольное окно и не видно представления относительно размера окна конкретного девайса то надо постоянно перескакиваать????? Можноли мне у Вас иногда здесь а не на форуме консультироваться?
    С Уважением. Олег?

    ОтветитьУдалить