Мне нужно реализовать сложную функцию с Codename One, которая включает в себя перемещение компонента (например, кнопки) на экране: у пользователей будет несколько кнопок на многоуровневой панели, и они смогут перемещать их, используяПалец.Абстрагируя мою проблему, чтобы сделать ее как можно более общей, это требования:
- есть несколько кнопок на многоуровневой панели;
- каждая кнопка имеет начальную позицию, рассчитанную поалгоритм, который должен знать размер экрана;
- положение каждой кнопки может быть внутри видимой части экрана или вне ее (например, положение x / y может быть отрицательным или большим, чем размер экрана));
- если пользователь касается только кнопки, его слушатель действия должен быть вызван ...
- ... вместо этого, если пользователь нажимает кнопку и перемещает палец, продолжая нажиматьна экране мой алгоритм должен получать движение пальца по оси x / y в реальном времени, и он должен иметь возможность обновлять положение всех кнопок при движении пальца.
Это не игра.Здесь я изложил проблему, чтобы адаптировать свои требования к нескольким ситуациям.Как я могу реализовать эти вещи в Codename One?
«Простой» вариант использования, чтобы лучше понять, что я имею в виду, например, перемещение кнопок, расположенных по кругу: в этом примере пользователь может нажатьодна кнопка или он / она может вращать весь круг кнопок, перемещая палец при нажатии кнопки.