С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.65
SERGEY199100
20 / 20 / 0
Регистрация: 29.10.2009
Сообщений: 430
#1

Срабатывание кнопки при удержании ее на определенное время - Программирование Android

14.08.2013, 10:08. Просмотров 2646. Ответов 6
Метки нет (Все метки)

Добрый день,
Подскажите, как организовать таймер, который по удержанию кнопки N-ое время сработает ? Например чтобы кнопка сработала нужно ее держать 3 секунды. Что-то в этом роде.

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

Постоянная отправка сообщений при удержании кнопки - Программирование Android
Есть система клиент-сервер. Клиент на андроиде, сервер на делфях. Всё в принципе работает, нажимаешь на button, сообщение считывается с...

Закрыть диалог во время выполнения процесса (принудительное срабатывание dismiss() - Программирование Android
Всем привет! В приложении есть диалоговое окно с кнопкой, по нажатию которой начинается выполнение процесса. Длительность процесса -...

Notification в определенное время - Программирование Android
Проблема вызова Notification при помощи AlarmManager. public void restartNotify(Context context) { AlarmManager alarmManager =...

Выполнение задания в определенное время - Программирование Android
Здравствуйте. Вопрос такой. Как правильно реализовать выполнение какого нибудь задания по расписанию (допустим раз в день) ? Например...

Отправка смс в определенное время - Программирование Android
Пожалуйста, помогите начинающему разработчику. Мне нужно написать приложение, которое в определенное время отправляет смс (текст смс и...

Notification в определенное время суток - Программирование Android
Я создал уведомление, которое срабатывает по нажатию кнопки, сразу. Что нужно дописать в коде, чтобы уведомление срабатывало, скажем в...

6
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
14.08.2013, 10:34 #2
а стандартный лонг клик лысенер не подходит?
0
SERGEY199100
20 / 20 / 0
Регистрация: 29.10.2009
Сообщений: 430
14.08.2013, 11:05  [ТС] #3
Подходит, а как он работает, как ему задать время после которого кнопка сработает при условии что мы ее держим ?
0
YAUHEN
146 / 128 / 6
Регистрация: 29.07.2008
Сообщений: 506
14.08.2013, 11:22 #4
если вам надо регулировать время срабатывания то скорее всего стандартные клик листнеры не помогут.
вы можете создать Handler и слать в него delayed меcаджи из onClickListener. и после нужной вам задержки они будут обрабатываться:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    MyHandler handler = new MyHandler();
    
    OnClickListener mClickListener = new OnClickListener() {
        
        @Override
        public void onClick(View v) {
            handler.sendEmptyMessageDelayed(MY_MSG, 100500);
        }
    };
    
    private int MY_MSG = 100500;
    
    class MyHandler extends Handler {
 
        @Override
        public void handleMessage(Message msg) {
            if(msg.what == MY_MSG) {
                //handle click
            }
            super.handleMessage(msg);
        }
        
    }
1
V0v1k
1159 / 983 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
14.08.2013, 22:42 #5
Цитата Сообщение от SERGEY199100 Посмотреть сообщение
как ему задать время после которого кнопка сработает при условии что мы ее держим ?
а стандартное поведение вас не устраивает?
Java
1
button.setOnLongClickListener(...);
0
Tester64
396 / 357 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
15.08.2013, 09:51 #6
Цитата Сообщение от YAUHEN Посмотреть сообщение
если вам надо регулировать время срабатывания то скорее всего стандартные клик листнеры не помогут.
вы можете создать Handler и слать в него delayed меcаджи из onClickListener. и после нужной вам задержки они будут обрабатываться:...
Выглядит красиво, но кажется не правильно обрабатывает именно ДЛИННЫЙ клик. Нажали - отправили сообщение и запустили "таймер". А если не дождались и сделали короткий клик? Тут скорее нужно поймать нажатие, засечь время и ловить отжатие. Если отжали ДО интервала, то отказываемся, если интервал прошел а мы не отпустили кнопку - своя обработка...
0
YAUHEN
146 / 128 / 6
Регистрация: 29.07.2008
Сообщений: 506
15.08.2013, 10:58 #7
Цитата Сообщение от Tester64 Посмотреть сообщение
Выглядит красиво, но кажется не правильно обрабатывает именно ДЛИННЫЙ клик. Нажали - отправили сообщение и запустили "таймер". А если не дождались и сделали короткий клик? Тут скорее нужно поймать нажатие, засечь время и ловить отжатие. Если отжали ДО интервала, то отказываемся, если интервал прошел а мы не отпустили кнопку - своя обработка...
да, вы правы, я наверное не сразу понял что нужно. по сути в данной ситуации можно использовать мой подход, но только будет нменого сложнее. надо вешать тач листнер и на события ACTION_UP ACTION_DOWN останавливать и запускать сообщения в хандлер
0
15.08.2013, 10:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.08.2013, 10:58
Привет! Вот еще темы с ответами:

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

Срабатывание оповещения в определенное время - C++ Qt
Доброго времени суток. Не могли бы вы подсказать, как сделать так, чтобы какое-то действие выполнялось в определенное время, что-то...

Срабатывание события в определенное время (будильник) - C#
Вот в чем дело) Я сделал календарь с заметками, но не могу настроить будильник, естественно тогда когда должен прозвинеть, время...

Срабатывание скрипта через определенное время - PHP
Подскажите как можно сделать так что бы определенный скрипт срабатывал после определенного времени как только пользователь что то сделал на...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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