Jump to content

Yaroslav Brovin

Administrators
  • Posts

    2,567
  • Joined

  • Last visited

  • Days Won

    647

Everything posted by Yaroslav Brovin

  1. В основном исправление, найденных ошибок и реализация функционала для iOS. Я две недели тут проболел, поэтому ничего особенно нового не будет. Через релиз выйдет TfgBottomSheetLayout для iOS + реализация оставшихся элементов карты (полилинии и полигоны) для iOS. Чуть позже выйдет новая полноценная поддержка анимации. Мы уже разработали архитектуру будущей анимации и реализовали базовые типы анимации для iOS и Андроид. Так что теперь можно будет пользоваться полноценными видами анимации, включая перемещение позиции и изменение размеров компонентов. Ну и естественно, в каждом релизе исправление, найденных ошибок.
  2. Рисовать нет. Но можно разместить сверху TfgPaintBox и нарисовать все, что душе угодно...
  3. Download: The distributive is available by request only. Release date: 14 December 2020 Bug Fixes 🐛 Release 1.7.0.0 threw away several methods from Android.Api.ActivityAndView, which are used Parcelable.
  4. Скачать: Релиз доступен только по запросу. Дата релиза: 14 декабря 2020 Исправление ошибок 🐛 В обновлении 1.7.0.0 пропала часть методов из Android.Api.ActivityAndView, использующих Parcelable.
  5. Добрый день, Сегодня еще раз проверю. Если что-то не так с заголовочными файлами, выложу вечером хотфикс.
  6. Download: The distributive is available by request only. Release date: 14 December 2020 New ✨ The new component TfgBottomSheetLayout was added for IDE and Android and 2 demo-samples "Components" -> "TfgBottomSheetLayout" -> "Modal mode", "Interesting places on map". Improvements ? All headers for android.telephony were added into Android.Api.Telephony. We marked all methods of Android Api, which were introduced after Android 5.0. We restructured the grouping of header files alittle. All animation related classes were moved in new unit Android.Api.Animations. Basic text classes were moved to Android.Api.Text. Before all loaded TfgBitmap from file or stream were immutable. It meant that you were not able to use Canvas of this bitmap. So if you wanted to render on this bitmap, you had to make copy of this bitmap. Now all bitmaps are mutable by default. Bug Fixes ? If you are using automatically opening last opened forms in FGX Native project group, sometimes forms couldn't find the assets. When you closed form, project or IDE, sometimes it could lead to raising exception. The iOS Application with Button with Icon could be crashed. When user opens TfgDrawer first time by button, panel is opened without animation.
  7. Скачать: Релиз доступен только по запросу. Дата релиза: 14 декабря 2020 Новое ✨ Добавлен новый компонент TfgBottomSheetLayout для IDE и Android и два демо-проекта "Компоненты" -> "TfgBottomSheetLayout" -> "Модальный режим", "Интересные места на карте". Улучшения ? Транслировали все типы android.telephony пакета в Android.Api.Telephony. Пометили все методы Android Api, которые введены позднее Android 5.0. Немного реструктурировали группировку заголовочных файлов. Все классы, связанные с анимацией перенесли в Android.Api.Animations. Перенесли базовые классы текстовых классов в Android.Api.Text. Раньше все загружаемые битмапы из файла или потока в Андроиде были не изменяемыми. Это значит, что на них нельзя было ничего рисовать. Чтобы выполнить отрисовку поверх приходилось делать копию через отрисовку битмапа на канве другого битмапа. Сейчас все битмапы мутабельны в принципе. Исправление ошибок ? При автоматическом открытии форм при загрузке группы FGX Native проектов, могли не применяться ассеты у форм. Исправлена потенциальная ошибка, которая могла возникать при закрытии формы, проекта или среды. Приложение с кнопкой с картинкой могло падать на iOS. При первом открытии TfgDrawer при помощи кнопки, панель открывалась без анимации.
  8. Вроде, есть у меня мысли, как такое могло получится. Фикс включил в следующую версию 1.7.0.0. Надо будет понаблюдать. Если проблема повторится, обязательно дайте мне знать
  9. Добрый вечер, Создать битмап Выполнить любую отрисовку поверх битмапа. Вот пример: Создал битмап FBitmap. procedure TForm4.fgFormCreate(Sender: TObject); begin FBitmap := TfgBitmap.Create(100, 100); FBitmap.Canvas.BeginPaint; try FBitmap.Canvas.Font.Size:= 50; FBitmap.Canvas.Fill.Color := TAlphaColorRec.Red; FBitmap.Canvas.Fill.Kind := TfgBrushKind.Solid; FBitmap.Canvas.FillText(FBitmap.Bounds, DateTimeToStr(now) ,False, TfgHorizontalAlignment.Right, TfgVerticalAlignment.Bottom); finally FBitmap.Canvas.EndPaint; end; end; И вывожу для проверки через TfgPaintBox: procedure TForm4.fgPaintBox1Paint(Sender: TObject; const Canvas: TfgCanvas); begin Canvas.DrawBitmap(FBitmap, FBitmap.Bounds); end;
  10. Максимум, я могу просто подкладывать пустые заглушки, как это делается в FMX.
  11. Эти файлы среда сама добавляет в любой проект автоматом. Всегда так было.
  12. Нужно больше информации. Как минимум шаги для воспроизведения.
  13. Эти файлы генерируются средой при использовании Пуш уведомлений. Однако, если пуши не используются, то и файлы не генерируются и не включаются в пакет. О чем собственно и сообщение. Это не влияет на работоспособность приложения. Однако, в среде нету механизма, чтобы включать/выключать файлы деплоя по условию. Поэтому эти файлы всегда находятся в деплое. Вы можете их отключить руками в DeploymentManager.
  14. В ближайшее время выйдет новый релиз 1.7.0.0, главной новинкой которого станет новый компонент TfgBottomSheetLayout. Это специальный компонент для организации отображения дочернего содержимого через выдвигаемую панель с нижней части экрана. Обо всех деталях использования компонента ниже. Структура Новый компонент доступен на вкладке "FGX: Layouts" -> "TfgBottomSheetLayout" и представляет собой композицию из трех частей, аналогичную структуре компонента TfgDrawerLayout: TfgBottomSheet - выдвигаемая снизу страница. TfgBottomSheetContent - контейнер для основного содержимого экрана. TfgBottomSheetLayout - координатор, отвечающий за управление отображением страницы. Состояния и управление TfgBottomSheet Страница может находиться в одном из трех конечных состояний: Страница полностью открыта - TfgBottomSheetState.Expanded; Страница свернута, но видна ее часть - TfgBottomSheetState.Collapsed; Страница полностью скрыта - TfgBottomSheetState.Hidden. В любой момент времени текущее состояние страницы можно получить через TfgBottomSheet.State. А чтобы программно управлять страницей, можно воспользоваться следующими методами TfgBottomSheet: /// <summary> /// Полностью модально разворачивает панель с анимацией. Основное содержимое <c>TfgBottomSheetLayout.Content</c> /// недоступно.</summary> /// <remarks>Если панель открыта, то ничего не делает.</remarks> procedure ShowModal; /// <summary>Полностью разворачивает панель с анимацией.</summary> /// <remarks>Если панель открыта, то ничего не делает.</remarks> procedure Expand; /// <summary>Сворачивает панель до заголовка с анимацией. </summary> /// <remarks> /// Если у панели нет заголовка, то полностью скрывает панель с экрана. Если панель закрыта, то ничего не делает. /// </remarks> procedure Collapse; /// <summary>Полностью скрывает панель с экрана с анимацией.</summary> /// <remarks>Если панель уже полностью скрыта, то ничего не делает.</remarks> procedure Hide; Настройка скрытия Если вы хотите запретить полное скрытие страницы с экрана, вы можете это сделать при помощи свойства TfgBottomSheet.IsHideable. /// <summary>Может ли пользователь полностью скрыть панель?</summary> property IsHideable: Boolean read FIsHideable write SetIsHideable default DefaultIsHideable; Настройка внешнего вида За высоту видимой части страницы в свернутом режиме отвечает свойство TfgBottomSheet.PeekHeight: /// <summary>Высота части панели, которая не задвигается целиком.</summary> /// <remarks>Работает в связке со свойством<c>Hideable</c>.</remarks> property PeekHeight: Single read FPeekHeight write SetPeekHeight stored IsPeekHeightStored nodefault; По умолчанию страница имеет непрозрачный фон. Однако, в определенных случаях, удобно использовать прозрачный фон. Таким образом можно добиться любой разметки вашего содержимого и добавить любые вложенные контейнеры. За прозрачный режим отвечает свойство TfgBottomSheet.IsTransparent. Модальный режим По умолчанию панель открывается и не блокирует основное содержимое. Вы можете продолжать взаимодействовать с контентом TfgBottomSheetContent. Таким способом обычно делают панели для отображения сопутствующей детальной информации https://material.io/components/sheets-bottom. Например: Однако, гораздо чаще используется модальный режим для организации контекстного меню или же открытия нового экрана: В этом случае, вам необходимо открыть страницу используя метод TfgBottomSheet.ShowModal. Демонстрационные проекты В 1.7.0.0 включены два демо-проекты, которые показывают использование модального и обычного режимов использования. Их вы можете найти в ветке "Компоненты" -> "TfgBottomSheetLayout".
  15. Новый компонент TfgBottomSheetLayout добавлен в 1.7.0.0 для Android. (iOS будет через релиз)
  16. Нужен проект. Но скорее всего слетели настройки в IDE.
×
×
  • Create New...