При таком определении могут использоваться размеры и позиция каждого объекта (а иногда и форма). Когда поступает событие ACTION_UP, которое означает, что пользователь отпустил перетаскиваемый объект, и этот объект находится поверх чего-то, на что его можно сбросить, можно запустить логику для обработки действия сбрасывания.
Описанный подход применяется в примере приложения. В случае обнаружения действия ACTION_UP мы просматриваем дочерние представления LinearLayout, и для каждого найденного элемента TextView производим сравнение позиции касания с гранями TextView (с небольшим дополнительным запасом). Если касание произведено внутри данного элемента TextView, мы извлекаем текущее числовое значение из TextView, увеличиваем его на единицу и сохраняем обратно. Если это случается, позиция точки возвращается в свое первоначальное состояние (с нулевыми координатами верхнего левого угла) для следующего перетаскивания.
В рассматриваемом примере демонстрируются основы перетаскивания в версиях, предшествующих Android. Благодаря им, вы сможете реализовать средства перетаскивания в своем приложении. Это может быть действие перетаскивания чего-нибудь в корзину, при котором перетаскиваемый объект должен удаляться, или же действие перетаскивания файла в папку для его перемещения или копирования. Чтобы украсить свое приложение, можно заранее идентифицировать представления, являющиеся потенциальными целями при перетаскивании, и менять их визуальное представление, когда перетаскивание начинается. Если нужно, чтобы перетаскиваемый объект исчезал с экрана после его сбрасывания на цель, его можно удалить из компоновки программным образом (с помощью разнообразных методов removeView.. в ViewGroup). http://www.calc.ru/1431.html
Теперь, когда вы ознакомились со сложным способом перетаскивания, давайте рассмотрим поддержку этой технологии, которая была добавлена в Android.
Опубликовал katy
February 17 2015 19:04:37 ·
0 Комментариев ·
2617 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.