Jump to content
View in the app

A better way to browse. Learn more.

FGX Native

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

  • Administrators

Скачать:
Релиз доступен только по запросу.

Дата релиза:

31 октября 2022


Улучшения 🙌

TfgAssetsManager

Методы TfgAssetBitmapSet.FindBitmap теперь возвращают ложь, если существует только информация об изображении без самого изображения (Bitmap = nil). 

TfgLottieImage

Опубликовано свойство AutoPlay, позволяющее автоматически проигрывать анимацию.

Исправление ошибок 🐛

 

21 минуту назад, Yaroslav Brovin сказал:

TfgAssetsManager

Методы TfgAssetBitmapSet.FindBitmap теперь возвращают ложь, если существует только информация об изображении без самого изображения (Bitmap = nil). 

Ярослав, можете дать небольшой фрагмент кода, как это использовать?

  • Author
  • Administrators

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

image.png

Информация о каждом изображении представляется в виде структуры FGX.Assets.BitmapSet.TfgBitmapInfo. Так вот раньше могла быть ситуация, когда изображения физически нету для какого-то коэффициента, а информация присутствовала (как на скриншоте выше). Поэтому раньше метод FindBitmap смотрел только на наличие информации, а не на физическое наличие изображения и мог вернуть True при отсутствующем изображении. Сейчас же метод проверяет в том числе наличие битмапа.

function TfgAssetBitmapSet.FindBitmap(out ABitmap: TfgBitmap): Boolean;
var
  BitmapInfo: TfgBitmapInfo;
begin
  ABitmap := nil;
  if FindBitmapInfo(BitmapInfo) then
    ABitmap := BitmapInfo.Bitmap;

  Result := ABitmap <> nil;
end;

Метод старый, поэтому есть две версии:

    /// <summary>
    ///   Выполняет поиск наиболее подходящего под текущий скейл экрана изображение. Если изображение найдено,
    ///   то оно возвращается в параметре <c>ABitmap</c> и в результате будет <c>True</c>, иначе вернется nil и
    ///   <c>False</c>.
    /// </summary>
    function FindBitmap(out ABitmap: TfgBitmap): Boolean; overload;

    /// <summary>
    ///   Выполняет поиск изображение для экрана со скейлом <c>AScale</c>. Если изображение найдено,
    ///   то оно возвращается в параметре <c>ABitmap</c> и в результате будет <c>True</c>, иначе вернется nil и
    ///   <c>False</c>.
    /// </summary>
    function FindBitmap(const AScale: Single; out ABitmap: TfgBitmap): Boolean; overload;

Поиск битмапа нужного масштаба у ассета можно реализовать так:

var
  Asset: TfgAssetBitmapSet;
  Bitmap: TfgBitmap;
begin
  // Здесь код по получению ассета по имени или любым другим способом. 
   ...
  // Пытаемся достать битмап
  if Asset.FindBitmap(Bitmap) then
    // Bitmap содержим экземпляр изображения
  else
    // Bitmap не найден

 

Recently Browsing 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.