О чем?
Идем от задачи
Виртуализация коллекции
Подключаем FastGrid
Дорабатываем FastGrid
Тюнинг ячеек
Результат
Подключаем FastGrid
https://github.com/twintechs/TwinTechsFormsLib
UICollectionView для iOS
RecyclerView для Android
FastGrid, компоновка ячеекВАЖНО: Поддержка горизонтальной и вертикальной ориентации
iOSLayout на базе UICollectionViewFlowLayout
AndroidLayout на базе GridLayoutManager с использованием Grid Span
FastGrid, Template Selectorvar templateSelector = new FastGridTemplateSelector();var productWidth = screenWidth / 3 - 1;templateSelector.DataTemplates.AddRange(new[] { new FastGridDataTemplate(typeof (ProductModel).Name, typeof (ProductViewCell), new Size(productWidth, 120)), new FastGridDataTemplate(typeof (string).Name, typeof (LoadingShopViewCell), new Size(screenWidth, 140))});templateSelector.Prepare();
FastGrid, Load moreВариант 1. Обновление всей таблицы
Вариант 2. Использование ObservableRangeCollection
ObservableRangeCollection<T>:Collection<T>,INotifyCollectionChanged
NotifyCollectionChangedAction.AddNotifyCollectionChangedAction.RemoveNotifyCollectionChangedAction.Reset
Тюнинг ячеек, свой Layout
public enum ProductLayoutViewTypes { Image, Price, OriginalPrice, Discount, }
1. FastGrid2. Тюнинг коллекции3. Тюнинг ячеек
Вячеслав Черников[email protected]
Сложные интерфейсы в XF