Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.73
Maxtron
50 / 50 / 3
Регистрация: 17.11.2012
Сообщений: 228
Записей в блоге: 1
#1

Обработка касания(провести пальцем) - Программирование Android

17.11.2013, 01:38. Просмотров 2123. Ответов 5
Метки нет (Все метки)

Нужно реализовать следующее: например, веду пальцем по линии, и при достижении конца линии находится кнопка, как только палец достигает конца линии кнопка нажимается и, например, осуществляется переход в активити. С помощью чего можно реализовать эту задумку?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2013, 01:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Обработка касания(провести пальцем) (Программирование Android):

Touch – обработка касания - Программирование Android
Задача - чтобы после прикосновения уменьшался шрифт до тех пор пока не будет поднят палец. Если ли другие варианты, кроме как написать...

Обработка касания touch - Программирование Android
Всем привет, я пытаюсь оброботать на картинке нажатие на найденный предмет по координатом через метод onTouch(View v, MotionEvent...

Следование объекта за пальцем - Программирование Android
Здравствуйте. Возникла потребность сделать программу, в которой будет несколько объектов (Картинок) и которые необходимо перетаскивать по...

Эмуляция нажатия пальцем - Программирование Android
Слышал (года 2 назад) что такое возможно. Не подскажите КАК? И вообще правда ли это? Нужен для этого рут? Тогда только собирал...

Найти объект на картинке пальцем - Программирование Android
как получить координаты клика по объекту с картинки? например, на картинке кот на улице, у меня есть xy кота, их надо сравнить с xy...

Менять размеры LinearLayout пальцем - Программирование Android
В Delphi/windows был компонент "разделитель", схватив который можно было увеличить/уменьшить одну панель за счет размера другой. (пример:...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
NiRamz
211 / 211 / 16
Регистрация: 26.12.2010
Сообщений: 691
17.11.2013, 02:53 #2
Почитайте про onTouchEvent
1
Maxtron
50 / 50 / 3
Регистрация: 17.11.2012
Сообщений: 228
Записей в блоге: 1
17.11.2013, 13:16  [ТС] #3
Цитата Сообщение от NiRamz Посмотреть сообщение
Почитайте про onTouchEvent
Спасибо, читал про это, но все же непонятно, как сделать эффект, подобный тому, чтобы разблокировать телефон(на версии Андроида 2.3.3), т.е. чтобы палец двигался строго по линии, если палец сдвинулся с линии, то нужно вновь вести пальцем от начала линии к концу кнопки, чтобы она активировалась..
0
verylazy
Заблокирован
17.11.2013, 13:57 #4
onTouchEvent вызывается при движении касания каждый раз
как вариант запомнить координаты первоначального касания и отслеживать не выходят ли текущие координаты касания за допустимые пределы
1
Maxtron
50 / 50 / 3
Регистрация: 17.11.2012
Сообщений: 228
Записей в блоге: 1
17.11.2013, 14:11  [ТС] #5
Цитата Сообщение от verylazy Посмотреть сообщение
onTouchEvent вызывается при движении касания каждый раз
как вариант запомнить координаты первоначального касания и отслеживать не выходят ли текущие координаты касания за допустимые пределы
там дело в том, что линия не обязательно идет прямо по горизонтали или вертикали, она может быть под наклоном
0
name?
198 / 169 / 18
Регистрация: 01.06.2010
Сообщений: 371
Завершенные тесты: 1
17.11.2013, 19:21 #6
тогда сделать примерно вот так

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
private Rect rect = new Rect(100, 100, 40, 30);
    boolean isBlock = false;
    
    
    @Override
    public boolean onTouch(View v, MotionEvent event) {
 
        if (event.getAction() == MotionEvent.ACTION_DOWN) {
            if(event.getX() == 100 && event.getY() == 100) isBlock = true;
            else isBlock = false;
        }
 
        if (event.getAction() == MotionEvent.ACTION_MOVE) {
            if(rect.intersect(event.getX(), event.getY(), 4, 4)) isBlock = true; 
            else isBlock = false;
        }
 
        if (event.getAction() == MotionEvent.ACTION_UP) {
             if(event.getX() == 140 && event.getY() == 130) isBlock = true;
             else isBlock = false;    
        }
        
        //if(isBlock) todo
        return true;
    }
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.11.2013, 19:21
Привет! Вот еще темы с ответами:

Считывание view при движении пальцем по экрану - Программирование Android
Добрый день, коллеги. Прошу помощи, возможно ли сделать следующую штуку - веду по экрану пальцем не отрывая последний, а программа...

Custom list - сдвиг строк пальцем в стороны - Программирование Android
Гуру, подскажите, как подобное делается? Часто подобное вижу в программах, но не представляю с какой стороны подйти. Есть даже...

Способ перехода к другому Activity через перемещение пальцем - Программирование Android
Зажимаю активити и плавно отвожу в сторону(например, влево), а справа выплывает другой активити. Как такое организовать? :)

Как создать обработчик касания в игре? - Программирование Android
Ниже приведён код игры PingPong, вверху ракетка противника(ИИ), а внизу ракетка управляемая игроком, к которой надо прикрутить слушатель...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.11.2013, 19:21
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru