FGX.CollectionView.TfgCustomCollectionView: различия между версиями

Материал из FGX Native Докуметации
Перейти к навигации Перейти к поиску
(summary)
(summary)
(Метка: замена)
Строка 1: Строка 1:
 
* [[ FGX.CollectionView | Вверх к родителю: FGX.CollectionView ]]
 
* [[ FGX.CollectionView | Вверх к родителю: FGX.CollectionView ]]
* [[ FGX.CollectionView.TfgCustomCollectionView_Methods | Методы ]]
 
* [[ FGX.CollectionView.TfgCustomCollectionView_Properties | Свойства ]]
 
  
 
Delphi
 
Delphi
  
<code>TfgCustomCollectionView = class (TfgControl, IFGXTapSupported, IFGXNotificationObserver, IFGXNotificationObservable)</code>
+
<code lang="Delphi">TfgCustomCollectionView = class (TfgControl, IFGXTapSupported, IFGXNotificationObserver, IFGXNotificationObservable)</code>
 
 
== Конструкторы ==
 
 
 
{| class="wikitable sortable"
 
|-
 
| <code>constructor</code> || <code>Create(AOwner: TComponent)</code>
 
 
 
|}
 
 
 
== Методы ==
 
 
 
{| class="wikitable sortable"
 
|-
 
| <code>procedure</code> || <code>ReloadItems()</code>
 
Перезагружает элементы коллекции. Форсирует перезагрузку всех элементов списка.
 
|-
 
| <code>procedure</code> || <code>ReloadItem(const AItemIndex: Integer)</code>
 
Перезагружает элемент коллекции по указанному индексу.
 
|-
 
| <code>function</code> || <code>GetItemId(const AItemIndex: Integer)</code>
 
Возвращает идентификатор элемента по его порядковому индексу. Для этого использует данные, полученные в результате работы обработчика события '' OnGetItemId '' . По умолчанию использует порядковый иднекс элемента.
 
|-
 
| <code>function</code> || <code>FindItemIndexById(const AItemId: Int64; out AItemIndex: Integer)</code>
 
Поиск порядкового индекса элемента по его уникальному идентификатору. Задание уникальных идентификаторо элементов осуществляется через событие '' OnGetItemId '' .
 
|-
 
| <code>function</code> || <code>FindItemIndexByPoint(const APoint: TPointF; out AItemIndex: Integer)</code>
 
Поиск порядкового индекса элемента по координатам точки в CollectionView, попадающая в один из видимых элементов. Работает только для видимых элементов с индексами в диапазоне '' GetFirstVisibleItemIndex '' и '' GetLastVisibleItemIndex '' . '' APoint '' указывается в системе координат контрола с учетом смещения прокрутки.
 
|-
 
| <code>function</code> || <code>FindItemIndexByObject(const AObject: TObject; out AItemIndex: Integer)</code>
 
Поиск порядкового индекса элемента по объекту, который принадлежит стилю элемента (по цепочке родителей можно выйти к стилю элемента).
 
|-
 
| <code>function</code> || <code>FindItemWrapperByIndex(const AItemIndex: Integer; out AItemWrapper: TfgItemWrapper)</code>
 
Ищет '' TfgItemWrapper '' для работы с контролом элемента по индексу. Если элемента по указанному индексу нет, то в '' AItemWrapper '' будет nil.
 
|-
 
| <code>function</code> || <code>FindItemControlByIndex(const AItemIndex: Integer; out AControl: TfgControl)</code>
 
Ищет контрол '' TfgControl '' элемента по индексу. Если элемента по указанному индексу нет, то в '' AControl '' будет nil.
 
|-
 
| <code>function</code> || <code>GetFirstVisibleItemIndex()</code>
 
Возвращает индекс первого видимого элемента на экране.
 
|-
 
| <code>function</code> || <code>GetLastVisibleItemIndex()</code>
 
Возвращает индекс последнего видимого элемента на экране.
 
|-
 
| <code>function</code> || <code>CreateStyle()</code>
 
Создает новый пустой стиль с уникальным именем '' TfgCollectionViewStyle.TfgStyleName '' .
 
|-
 
| <code>procedure</code> || <code>AddStyle(const AStyle: TfgCollectionViewStyle)</code>
 
Добавляет стиль в список стилей контрола.
 
|-
 
| <code>function</code> || <code>GetStyle(const AStyleName: string)</code>
 
Возвращает стиль по его имени.
 
|-
 
| <code>function</code> || <code>GetStyleIndex(const AStyleName: string)</code>
 
Возвращает индекс стиля по его имени. Первый стиль имеет индекс 0.
 
|-
 
| <code>function</code> || <code>GetStyleForItemIndex(const AItemIndex: Integer)</code>
 
Возвращает стиль элемента по указанному индексу элемента.
 
|-
 
| <code>procedure</code> || <code>ScrollToItem(const AItemIndex: Integer; const AWithAnimation: Boolean)</code>
 
 
 
|-
 
| <code>procedure</code> || <code>ResetSelection()</code>
 
Сбрасывает текущее выделение всех выделенных элементов.
 
|-
 
| <code>procedure</code> || <code>ResetSelection(const AItemIndex: Integer)</code>
 
Сбрасывает текущее выделение элемента с указанным индексом.
 
|-
 
| <code>procedure</code> || <code>SelectItem(const AItemIndex: Integer)</code>
 
Выделяет элемент с указанным индексом.
 
|-
 
| <code>procedure</code> || <code>SelectAllItems()</code>
 
Выделяет все элементы списка.
 
|-
 
| <code>procedure</code> || <code>BeginPullToRefresh()</code>
 
Запускает программным способом процесс обновления данных с одновременным отображением индикатора загрузки. Разработчик должен выполнить/запустить процесс обновления данных и по окончании загрузки данных сообщить об этом контролу, вызвав '' EndPullToRefresh '' . Обратите внимание, что для визуального обновления данных, разработчику так же нужно воспользовать одним из методов обновления данных '' ReloadItems '' или '' ReloadItem '' .
 
|-
 
| <code>procedure</code> || <code>EndPullToRefresh()</code>
 
Заканчивает процесс обновления данных, начатый пользователем. Это приводит к скрытию индикатора загрузки и загрузки данных в список. Обратите внимание, что для визуального обновления данных, разработчику так же нужно воспользовать одним из методов обновления данных '' ReloadItems '' или '' ReloadItem '' .
 
|}
 
 
 
== Свойства ==
 
 
 
{| class="wikitable sortable"
 
|-
 
| <code>property</code> || <code>Count: Integer</code>
 
Возвращает общее количество элементов списка. Использует обработчик '' OnGetItemCount '' .
 
|-
 
| <code>property</code> || <code>StylesContainer: TfgCollectionViewStyles</code>
 
Контейнер стилей, содержит все стили коллекции.
 
|-
 
| <code>property</code> || <code>ContentOffset: TPointF</code>
 
Возвращает смещение контента.
 
|-
 
| <code>property</code> || <code>Selection: TfgCollectionViewItemsArray</code>
 
Массив индексов выделенных элементов.
 
|-
 
| <code>property</code> || <code>IsPullToRefreshActive: Boolean</code>
 
 
 
|-
 
| <code>property</code> || <code>ScrollGlowColorLink: TfgAssetColorLink</code>
 
 
 
|-
 
| <code>property</code> || <code>SelectionColorLink: TfgAssetColorLink</code>
 
 
 
|-
 
| <code>property</code> || <code>PullToRefreshOptions: TfgPullToRefreshOptions</code>
 
Настройки режима обновления списка "Потяни и обнови".
 
|-
 
| <code>property</code> || <code>ScrollGlowColor: TAlphaColor</code>
 
Цвет эффекта прокручивания списка, который появляется при попытке прокрутить список за его границы.
 
|-
 
| <code>property</code> || <code>ScrollGlowColorName: TfgAssetName</code>
 
 
 
|-
 
| <code>property</code> || <code>SelectionColor: TAlphaColor</code>
 
Общий цвет выделение элементов по умолчанию. Каждый стиль элемента может переопределить это значение через аналогичное свойство '' TfgCollectionViewStyle.SelectionColor '' .
 
|-
 
| <code>property</code> || <code>SelectionColorName: TfgAssetName</code>
 
Название ресурса цвета выделения элементов в контроле.
 
|-
 
| <code>property</code> || <code>SelectionMode: TfgCollectionViewSelectionMode</code>
 
Режим выделения элементов. Всего существует три способа выделения:
 
 
Режим выделения элементов. Всего существует три способа выделения:
 
|}
 
 
 
== События ==
 
 
 
{| class="wikitable sortable"
 
|-
 
| <code>event</code> || <code>OnGetItemCount: Integer</code>
 
Через это событие компонент запрашивает общее количество элементов, которые необходимо отобразить.
 
|-
 
| <code>event</code> || <code>OnGetItemId: TfgOnGetItemId</code>
 
Через это событие компонент запрашивает уникальный идентификатор элемента. Эта информация может использоваться контролом для визуального выделения изменения элементов на экране при обновлении списка. По мимо этот идентификтор используется для корректного выделения элементов в случае, когда пользователь меняет данные элементов, добавляет или удаляет их.
 
|-
 
| <code>event</code> || <code>OnGetItemStyle: string</code>
 
Через это событие компонент запрашивает название стиля, которое необходимо применить к элементу по указанному индексу.
 
|-
 
| <code>event</code> || <code>OnBindItem: TfgOnBindItem</code>
 
Через это событие происходит связь пользовательских данных с конкретным элементом списка по указанному индексу.
 
|-
 
| <code>event</code> || <code>OnTapItem: TfgOnItemTap</code>
 
Пользователь нажал на элемент списка.
 
|-
 
| <code>event</code> || <code>OnSelectionChanged: TfgOnSelectionChangedEvent</code>
 
Пользователь совершил выделение одного или нескольких элементов списка. За возможность выделения элемента отвечает свойство стиля '' TfgCollectionViewStyle.Selectable '' .
 
|-
 
| <code>event</code> || <code>OnItemSelectionChanged: TfgOnItemSelectionChanged</code>
 
Изменилось выделение у элемента с индексом '' AItemIndex '' .
 
|-
 
| <code>event</code> || <code>OnScroll: TfgOnScrollEvent</code>
 
Срабатывает, когда содержимое списка прокручивается.
 
|-
 
| <code>event</code> || <code>OnPullToRefresh: TNotifyEvent</code>
 
Срабатывает, когда пользователь запускает процесс обновления списка. Чтобы это событие работало, нужно обязательно включить поддержку режима обновления данных '' EnabledPullToRefresh = True '' .
 
|}
 
 
 
== Константы ==
 
 
 
{| class="wikitable sortable"
 
|-
 
| <code>const</code> || <code>DefaultScrollGlowColor: TAlphaColor</code>
 
 
 
|-
 
| <code>const</code> || <code>DefaultSelectionMode: TfgCollectionViewSelectionMode</code>
 
 
 
|-
 
| <code>const</code> || <code>DefaultSelectionColor: TAlphaColor</code>
 
 
 
|}
 

Версия 03:51, 10 июня 2019

Delphi

TfgCustomCollectionView = class (TfgControl, IFGXTapSupported, IFGXNotificationObserver, IFGXNotificationObservable)