Перейти к содержанию
Fire Monkey от А до Я
  • 0

Загрузка в потоке возможно ли ?


Виталий Иванов

Вопрос

Есть такая идея. 

Загружаю в TListView много элементов (от 500 до 1000 может и более) ситуация вынуждает грузить именно столько :( . Так вот когда начинаю создавать их кастомно после создания приходится вызвать oItem.Adapter.ResetView(oItem) (Если этого не делать то не корректно рассчитывается высота и ещё пару багов :) )  что соответсвенно вызывает подвисание интерфейса на Windows все круто это не так в глаза бросается, а на Android печалька форма зависает от 10 до 30 секунд 

Так вот сам вопрос можно ли как это сделать в отдельном потоке что бы пользователю показывать какой нибудь Waiter. Или может кто как по другому предложит реализовать ? 

Смотрел в сторону динамической подгрузки итемов но хотелось бы что и его поиск работал :)

Изменено пользователем Виталий Иванов
Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Я думаю многие когда-то думали , что если разом загрузить все СтоПятьсот записей то все будет хорошо. Увы. 

Я бы предложил sqllite + listview с динамической подгрузкой при проходе вниз на n-элементов. Поиск организовать выборкой из бд + перерисовка. 

Такой вариант не подошёл?

Ссылка на комментарий
  • 0

Выполняйте oItem.Adapter.ResetView(oItem) в OnScrollViewChange по мере необходимости. Вначале для всех видимых + еще пару экранов вниз. При прокрутке повторяем.

Ссылка на комментарий
  • 0
В 27.02.2018 в 11:00, Евгений Корепов сказал:

Выполняйте oItem.Adapter.ResetView(oItem) в OnScrollViewChange по мере необходимости. Вначале для всех видимых + еще пару экранов вниз. При прокрутке повторяем.

Круто работает. Делаю в цикле от первого видимого и до последнего видимого + количество видимого и при быстрой прокрутке начинается факханалия :) невозможно быстро листать.

Ссылка на комментарий
  • 0
В 26.02.2018 в 18:04, FREEFAR сказал:

Я думаю многие когда-то думали , что если разом загрузить все СтоПятьсот записей то все будет хорошо. Увы. 

Я бы предложил sqllite + listview с динамической подгрузкой при проходе вниз на n-элементов. Поиск организовать выборкой из бд + перерисовка. 

Такой вариант не подошёл?

В эту сторону и думал пока не знаю как правильно это организовать 

Ссылка на комментарий
  • 0
1 час назад, Akad сказал:

Все вьюхи в fmx работают через одно место. Меня спас TGrid с кастомной отрисовкой. Не полная замена, но штука работает и не тормозит.
 

Ну не знаю. На iOS работает Listview идеально.

Ссылка на комментарий
  • 0
1 час назад, Akad сказал:

Меня спас TGrid

А нет примера какого-нибудь с Grid'ом ? С удовольствием бы посмотрел и подумал бы о переходе. Ибо на Андроиде действительно пока печаль.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...