Я использую пользовательскую расширяемую панель действий в своей игре.
Я использую ViewDragHelper, чтобы обрабатывать перетаскивание и покачивание представления на панели, которое содержится в подклассе LinearLayout
я для присоединения ViewDragHelper.
Следующие ссылки оказали большую помощь для достижения этой цели:
- Учебник по ViewDragHelper: http://flavienlaurent.com/blog/2013/08/28/each-navigation-drawer-hides-a-viewdraghelper/
- Освоение сенсорной системы Android: https://www.youtube.com/watch?v=EZAoJU-nUyI (что дало мне ключ к тому, чтобы сделать просмотр кликабельным и перетаскиваемым)
Единственная проблема, с которой я сталкиваюсь, - это поведение layout() моего родительского LinearLayout: при каждом вызове layout()
/onLayout()
дочерняя перетаскиваемая/расширяемая панель действий reset в исходное положение (тот, который установлен в макете XML).
Почему это?
(По моему опыту layout()
никогда не смешивается с позициями, которые уже были перемещены)