Jump to content

Александр Клопоцкий

Active subscription
  • Content Count

    34
  • Joined

  • Last visited

Community Reputation

13 Good

About Александр Клопоцкий

  • Birthday 02/17/1972

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Первая версия каталога, которая работала пару месяцев, у меня была сделана по "демо проекту": "Ресурсы" -> "Изображения" -> "Асинхронная загрузка изображения по URI". На хостинг я выкладывал новые *.jpg страниц каталога, и они открывались в приложении без обновления приложения. Это тот способ обновления, который использует официальное приложение от компании "Фаберлик". Приложение по размеру маленькое, все тащит через интернет. Навигация по страницам каталога: "<< Первая", "< Предыдущая", "Следующая >", "Последняя >>" и "Введите номер", какую страницу показать. Про клиентов приложения - это девушки, которые выбирают товар, рекламируют, продают его везде и всегда, "сетевики", ну и новые клиенты, которые готовы листать этот каталог вдоль и поперек часами, выискивая выгодные цены. Они часто листают каталог, где нет хорошего интернета, за городом, на даче, на шашлыках, и туалете, в автобусе, и им надо быстро сразу весь каталог полистать взад - вперед и увеличить где нужно. Я предложил им второй вариант, где каталог жестко зашит в "Assets Manager". Размер приложения сразу увеличился с 15 Mb до 65 Mb, но зато теперь каталог всегда с ними и они его могут всегда "кручу - верчу - смотрю как хочу", он у них летает. Для обновления в начале каталога нажимают ссылку на "Google Play" и обновляются без проблем. Знают число, когда каталог меняется и я рассылаю по "демо проекту": "Push-уведомления" -> "Получение Push-уведомления" - "Новый каталог, обновите приложение!". Им этот вариант однозначно больше нравиться. Они ведь всегда по причине нестабильного интернета скачивали себе в "Галерею" каталог в виде фото, это 300 *.jpg рисунков разрешения 902 x 1352. Каталог менялся, "Галерея" засорялась, они уже путались, это в "Галерее" новый каталог или старый, чистить не все умели, памяти со временем не хватало. А при обновлении приложения старый каталог гарантированно уйдет из памяти телефона и заменится новым, и не надо "Галерею" чистить потому как каталог в приложении. Ну и насчет памяти, в смысле стремления сделать приложение как можно меньшего размера. Это как с ассемблером, где каждый байт экономили, по тому как раньше объемы памяти были очень ограниченные. Сейчас памяти становиться много, экономить уже не нужно, ограничение это уже снимается, важным становиться удобство использования. Эта ошибка "нехватка памяти" при листании, которую я привел выше возникала на "дохлом" телефоне "Xiaomi Redmi Note 3" без включенной "выгрузки из памяти". В хороших последних телефонах она не возникает даже при выключенной "выгрузки из памяти", хватает памяти загрузить весь "Assets Manager" и листать его. Здесь выбор: Приложение либо универсальное, маленькое но медленное, которое обновлять не надо – Либо не универсальное, большое но быстрое, которое обновлять надо. Мои пользователи однозначно выбрали второе.
  2. Спасибо "sinuke" https://forum.fgx-native.com/profile/7-sinuke/ за публикацию проекта "Проверка контрольных знаков" и исходного кода в общий доступ: https://github.com/sinuke/excises Там я смотрел, как правильно добавлять, вызывать и закрывать дополнительные формы в свой проект. Эту тему можно вынести и на вебинары по обзору возможностей библиотеки. Добавил вызов формы просмотра выбранной страницы каталога: procedure TfmCatalog.ShowCatalogPage; begin fmCatalogPage := TfmCatalogPage.Create(Self); fmCatalogPage.IsAnimating := True; TfgAnimationHelper.ShowForm(fmCatalogPage, [TfgAnimationOption.StartFromCurrent], ANIMATION_DIRATION, procedure begin fmCatalogPage.IsAnimating := False; end); end; По "демо проекту": "Компоненты" -> "TfgCollectionView" -> "Выделение" сделал вызов формы просмотра выделенной страницы каталога: procedure TfmCatalog.cvCatSelectionChanged(Sender: TObject; const ASelectedItems: TArray<System.Integer>); var ItemIndex: Integer; begin for ItemIndex in ASelectedItems do begin CatalogPage := ItemIndex + 1; ShowCatalogPage; end; end; По "демо проекту": "Жесты" -> "Жест "Zoom" - увеличение масштаба" без изменения кода примера добавил функционал просмотра страницы каталога с Zoom: procedure TfmCatalogPage.imCatPageZoom(Sender: TObject; const AZoomInfo: TfgZoomInfo); begin if AZoomInfo.Phase = TfgGesturePhase.&InProgress then begin imCatPage.PositionMode := TfgImage.DefaultPositionMode; imCatPage.Size.SetSizeF(AZoomInfo.InitialSize.cx * AzoomInfo.Scale, AZoomInfo.InitialSize.cy * AzoomInfo.Scale); imCatPage.Position.Point := imCatPage.LocalToForm(AZoomInfo.Focus) - AZoomInfo.InitialFocus * AzoomInfo.Scale; imCatPage.Realign; end; end;
  3. По "демо проекту": "Ресурсы" -> "Изображения" -> "Выгрузка изображений из памяти" сделал каталог. В "Assets Manager" загрузил изображения 292 страниц каталога. Без включения выгрузки из памяти, при прокрутке на 26 странице возникает ошибка нехватки памяти. После включения выгрузки из памяти прокручиваются все 292 страницы. Спасибо, прекрасно работает! TfgAssetsManager.Current.AutoreleaseOptions.Enabled := True;
  4. У меня подписка до 05.04.2020. Буду ждать счет.
  5. В библиотеке есть пример: "DrawerDemo". Там на fgNavigationBar1 иконка "Гамбургера", при нажатии на которую выдвигается "Drawer". В "FGX Assets manager" видно как иконка подключается: Иконку для своего приложения можно взять из папки примера: Меню (TfgListMenu или TfgCollectionView) размещаем на "Drawer".
×
×
  • Create New...