Поменять местами два (любых) ListBoxItem’а используя при этом анимацию(AnimateFloat или другую). Т.е. добавить плавности смены.
Что нужно учитывать:
Каждый из Итемов, должен принимать новый Index.
Пример:
У нас есть два Итема «ListBoxItem1(Index=0) и ListBoxItem2(Index=1)».
После обмена должно получиться «ListBoxItem2(Index=0) и ListBoxItem1(Index=1)».
Т.е. если мы меняем местами два листбокса, то меняем их полностью, учитывая индексы.
Что я пытался использовать:
«FMX.ListBox.TCustomListBox.ItemsExchange», всё меняется, но нет анимации.
Изменять Индекс у обоих Итемов вручную, но опять же нет анимации смены и как выяснил потом, это тот же принцип, что у первого пункта.
Пытался менять Итемы с помощью «AnimateFloat» управляя свойством «Position.X и Position.Y», всё отлично, но, как и ожидалось, Итемы меняются только визуально.
По сути, мне необходимо создать эффект перетаскивания, который является неким подобием Drag and Drop.
Вопрос
Andrey Efimov
Приветствую.
Задача такая:
Поменять местами два (любых) ListBoxItem’а используя при этом анимацию(AnimateFloat или другую). Т.е. добавить плавности смены.
Что нужно учитывать:
Каждый из Итемов, должен принимать новый Index.
Пример:
У нас есть два Итема «ListBoxItem1(Index=0) и ListBoxItem2(Index=1)».
После обмена должно получиться «ListBoxItem2(Index=0) и ListBoxItem1(Index=1)».
Т.е. если мы меняем местами два листбокса, то меняем их полностью, учитывая индексы.
Что я пытался использовать:
По сути, мне необходимо создать эффект перетаскивания, который является неким подобием Drag and Drop.
Ссылка на комментарий
3 ответа на этот вопрос
Рекомендуемые сообщения