Russian Qt Forum

Qt => Model-View (MV) => Тема начата: RustAlex от Ноябрь 23, 2015, 17:33



Название: Какой сигнал вызовет ListView при свайп вверх в конце списка
Отправлено: RustAlex от Ноябрь 23, 2015, 17:33
Ответ должен быть очевиден - но не нашел...
Вряд ли ж надо обрабатывать в SwipeArea  (как в примерах help) с созданием сигналов swipeUp(), swipeDown()...


Название: Re: Какой сигнал вызовет ListView при свайп вверх в конце списка
Отправлено: RustAlex от Ноябрь 26, 2015, 15:12
Еще есть класс QGesture который тоже  работает со swipe - однако по умолчанию ListView - в QML тоже нормально листается - все меня устраивает. Только как понять что долистали до конца?

Использовать индекс нельзя: Выделение последней записи вполне может и не быть - вообще наверно фокус отключу... как же понять что добрались до конца? Т.к. гружу порциями данные - необходимо понять что надо грузить дальше


Название: Re: Какой сигнал вызовет ListView при свайп вверх в конце списка
Отправлено: RustAlex от Ноябрь 30, 2015, 18:29
Сам себе отвечаю:
в обработчике сигнала onFlickEnded или  onMovementEnded (не понял в чем разница) проверяем значение atYEnd - если true - то мы достигли конца списка.

Код:
onFlickEnded: {
        if(atYEnd) nPage ++;
        console.log("ListView: Достигли окончания списка, читаем следующую страницу: ", nPage);
        ...
 }