Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 15
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование процесса поступления заявок в систему, состоящую из трёх Э...
Файл записей с выводом обратного заголовка на Turbo Pascal
Моделирование процесса передачи данных по магистрали с основным и резерв...

Исследование перетаскивания
На заметку! В конце будет дан URL-адрес, по которому можно загрузить проекты, рассмотренные в, и затем импортировать их непосредственно в Eclipse. В тексте будет приводиться только код, иллюстрирующий концепции. Для получения рабочего примера приложения понадобится загрузить проект для данной.
Первый пример приложения в этой называется TouchDragDemo. В настоящем разделе мы рассмотрим два ключевых файла:
/res/layout/main.xml
/src/com/androidbook/touch/dragdemo/Dot.java
Файл main.xml содержит компоновку для приложения, демонстрирующего перетаскивание. Содержимое этого файла о . Некоторые из ключевых концепций, которые следует отметить, касаются использования FrameLayout в качестве контейнера верхнего уровня, внутри которого находится контейнер LinearLayout, содержащий элементы TextView и специальный класс View по имени Dot. Поскольку LinearLayout и Dot сосуществуют в рамках FrameLayout, их позиции и размеры на самом деле не влияют друг на друга, однако они будут разделять свободное пространство экрана, располагаясь друг над другом. Пользовательский интерфейс этого приложения показан.
Обратите внимание, что имя пакета в XML-файле компоновки для элемента Dot должно совпадать с именем пакета, используемого для вашего приложения. Как упоминалось ранее, компоновка Dot отделена от LinearLayout. Причина в том, что нам нужна свобода перемещения точки по экрану; именно потому атрибуты layout_width и layout_height установлены в "fill_parent". Когда точка рисуется на экране, она должна быть видна, и если ограничить размеры представления точки диаметром этой точки, то ее не будет возможности увидеть при перетаскивании от исходной позиции.
На заметку! Формально можно было бы установить android:clipChildren в true в дескрипторе FrameLayout и выбрать для ширины и высоты контейнера компоновки точки вариант wrap_content, но такое решение не выглядит очевидным.
Каждый счетчик размещается с фоном, отступами, полями и тяготением, которые обеспечивают его отображение по правой стороне экрана. Мы начинаем с нулевых значений счетчиков, но вскоре вы у, что по мере перетаскивания поверх них точек эти значения будут инкрементироваться. Хотя в рассматриваемом примере применяются элементы TextView, в качестве цели перетаскивания можно было бы использовать практически любой объект View. А теперь посмотрим на Java-код класса Dot, . http://zonacomforta.com/garderobnyie/free-style/garderobnaya-komnata-iz-dsp-2/
Запустив это приложение, вы у белую точку на синем фоне. Можете коснуться точки и перетащить ее в рамках экрана. Когда вы уберете палец от экрана, точка останется на своем месте до тех пор, пока вы снова ее не коснетесь и перетащите куда- то в другое место. Метод draw помещает точку в ее текущую позицию с указанным левым верхним углом, скорректированную согласно радиусу точки. За счет получения объектов MotionEvent в методе onTouchEvent мы можем модифицировать позицию левого верхнего угла на величину перемещения при касании.
Поскольку пользователь не всегда касается в точности центра объекта, координаты касания не будут совпадать с координатами местоположения объекта. В этом и состоит назначение смещения: получить координаты левого верхнего края точки из позиции касания. Но еще до начала операции перетаскивания нам нужно удостовериться в том, что пользователь коснулся достаточно близко к точке. Если пользователь касается экрана далеко от точки, что формально находится внутри компоновки представления точки, то последовательность перетаскивания начинаться не должна. Именно поэтому мы смотрим, произведено ли касание внутри самой белой точки; если нет, мы просто возвращаем false, что препятствует получению любых других событий касания в данной последовательности касания.
Когда палец начинает перемещаться по экрану, мы уточняем местоположение объекта с использованием небольших изменений координат x и у из получаемых экземпляров MotionEvent. Когда перемещение останавливается (ACTION_UP), местоположение финализируется на основе координат последнего касания. В этом примере мы не должны заботиться о полосах прокрутки, которые могли бы затруднить вычисление позиции объекта на экране. Однако базовые принципы остаются теми же самыми. Зная начальное местоположение перемещаемого объекта, и также отслеживая значения изменений координат касания через диапазон действий с ACTION_DOWN до ACTION_UP, мы можем уточнять местоположение объекта на экране.
Опубликовал katy February 17 2015 19:01:03 · 0 Комментариев · 2826 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
JanReplace
index.php + мод ...
ShadelLabel
PHP: настольная к...
39 статьи по Delphi
XPATComponents
SendSMS для PHP-F...
Пользовательская...
XPButtons
Preview
C++ для начинающих
БД сеть компьютер...
Программирование ...
IPAddresseEdit
WinAmp
Архив Апгрейтов с...
Основы Delphi. Пр...
BIOS
Открытие Cd-ROM'a...
Книга по Delphi (...

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14239
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Поиск чисел удовле...
Содержание
Файлы в языке C и C++
Неопределенные циклы
КЛАСС ИЛИ ЗАПИСЬ?
Б-деревья
аутентификацию по ...
Применение аппарат...
Дешифрация отдельн...
Следует определить...
Водительское удост...
Пусть задана матри...
Условная компиляци...
Использование новы...
Совершенная красот...
Ограничения на дли...
Must be in 8087 mo...
Шаблоны и наследов...
Механизмы доступа ...
Руководство для ра...
Обработка исключит...
Использование бито...
Модуль Text
превышает реальный...
Режим с обострением
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?