Russian Qt Forum
Ноябрь 01, 2024, 21:28 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: PathView и "безрывковая" анимация при изменении индекса.  (Прочитано 2699 раз)
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« : Февраль 18, 2015, 19:21 »

Всем доброго времени.

Нужно сделать такую анимацию чтобы PathView непрерывно "крутился" (шел перебор айтемов) в течении некоторого времени,
а потом останавливался. При этом, в начале оно должно крутиться быстро, а потом все медленнее и медленнее пока не остановится.

Бьюсь целую неделю, а результата не достиг, пробовал так:

1. Повесить вызов incrementCurrentIndex() на таймер. Но тут рывками оно перемещается, а надо плавно.
Параметр highlightMoveDuration особо ничего не дал.

2. Пробовал повесить NumberAnimation на currentIndex - тоже ничего не дает..

3. Пробовал повесить SmoothAnimation - то вообще не то что-то..

В общем, есть кто гуру QML-а? Может кто что подсказать? Улыбающийся
Записан

ArchLinux x86_64 / Win10 64 bit
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4746



Просмотр профиля WWW
« Ответ #1 : Февраль 18, 2015, 19:31 »

может проще в нативняк спрыгнуть и обертку написать? в иос такое поведение по умолчанию к примеру. или речь не о мобильных платформах?
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #2 : Февраль 18, 2015, 22:44 »

> может проще в нативняк спрыгнуть и обертку написать?

Не, нативняк не вариант.. долго буду ковыряться.

> или речь не о мобильных платформах?

Нет, используется Win8.

UPD: Вставлю код, о котором веду речь:

Код
Java
import QtQuick 2.4
 
PathView {
   id: view
 
   width: 320; height: 480
 
   pathItemCount: 3
   preferredHighlightBegin: 0.5
   preferredHighlightEnd: 0.5
 
   highlightMoveDuration: 0 /// <<< это не дает "мягкого эФФекта"
   offset: 1 /// <<< это вообще ни на что не влияет.
 
   model: 4
 
   delegate: Item {
       width: view.width; height: view.height / 3.0
 
       Text { anchors.centerIn: parent; text: index }
 
       Rectangle {
           anchors.left: parent.left; anchors.right: parent.right;
           height: 2; radius: 1; color: "darkblue"
       }
   }
 
   path: Path {
       id: path
       startX: view.width / 2
       PathLine { x: path.startX; y: view.height }
   }
 
   Timer {
       interval: 200; running: true; repeat: true
       onTriggered: view.incrementCurrentIndex()
   }
}
 
Записан

ArchLinux x86_64 / Win10 64 bit
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.09 секунд. Запросов: 23.