Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
10.08.2016, 17:20  [ТС]

Мягкий лонг-клик по кнопке с таймером - Программирование Android

10.08.2016, 17:20. Просмотров 529. Ответов 13
Метки (Все метки)

Цитата Сообщение от Паблито Посмотреть сообщение
писал ровно 10 минут
Я свой тоже минут 15-20 писал... Хотелось СИСТЕМНОЕ решение... (типа как с анимацией - натравил класс на кнопку и пользуюсь)

http://www.cyberforum.ru/android-dev/thread1797856.html
Мой вариант чуть и гибче:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
    private Timer timer;
    private long timer_begin;
    private boolean timer_runed = false;
 
 
        ((Button) view.findViewById(R.id.bt_chg1)).setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View view) {
                TimerTask task1 = new TimerTask() {
                    @Override
                    public void run() {
                        long time=System.currentTimeMillis();
                        if(timer_begin==-1) timer_begin = time;
 
                        // плавное наращивание скорости... НЕ ПРОВЕРЕНО
                        if(time-timer_begin-5*1000>0) {
                            setValueAddUi(-10);
                        }else if(time-timer_begin-3*1000>0) {
                            setValueAddUi(-5);
                        }else{
                            setValueAddUi(-1);
                        }
                    }
                };
                if(!timer_runed) {
                    timer_begin = -1;
                    timer = new Timer();
                    timer.schedule(task1, 1, 100);
                    timer_runed = true;
                }
                return false;
            }
        });
        ((Button) view.findViewById(R.id.bt_chg1)).setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {
                if((motionEvent.getAction() == MotionEvent.ACTION_UP)||(motionEvent.getAction() == MotionEvent.ACTION_CANCEL)) {
                    if (timer_runed){ timer.cancel(); timer = null; timer_runed = false; }
                }
                return false;
            }
        });
(в своих "костылях на скорую руку" мог что-нибудь упустить, что приведет к зависанию в самый нужный момент и отпугнет пользователя)
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.08.2016, 17:20
Готовые ответы и решения для Программирование Android Мягкий лонг-клик по кнопке с таймером:

Клик в соответствии с таймером
zAkS__dBUpU Вот то что я хотел сделать уже пол года. Нужно что бы в программе...

QT клик мышкой в заданное время, в соотношении с таймером
Помогите. Нужно сделать таймер с точностью до тысячных. Затем, если в таймере...

Клик по кнопке
Не могли бы помочь написать скрипт который будет кликать по кнопке браузера как...

Не работает клик по кнопке
Не получается запустить даже самый простой код Вот это ХАМЛ код <Window...

Правый клик по кнопке
Создал диалоговое приложение (MFC), в нем кнопка. Хотел сделать обработчик на...

13
Мягкий лонг-клик по кнопке с таймером Программирование Android   Следующее сообщение темы 
Другие темы раздела
Программирование Android Облачная платформа для разработчиков http://www.cyberforum.ru/android-dev/thread1791982.html
Доброго дня. Программированием на андроид занимаюсь только как хобби. Корпорация добра почти насильно переводит на Студию. А у меня железо не тянет. Менять комп ради увлечения как то не по карману....
Программирование Android Запуск проекта jMonkeyEngine на Android Не могу скомпилировать APK файл с jME SDK. Вот лог: ant -f C:\\Users\\Bublik\\Documents\\testjme\\BasicGame clean jar init: deps-clean: Updating property file:... http://www.cyberforum.ru/android-dev/thread1791968.html
Программирование Android Есть ли сервис, который может проверить твою иконку на наличие АП?
Маленькая предыстория. Как-то я написал приложение и задумался про красивую иконку. Рисовать не умею, заказывать дорого. Нашел на одном сайте (вроде бы как с изображениями без авторских прав...
Программирование Android Imageloader in dcim
Здравствуйте, маленький вопрос: почему изображения при показе сразу во вью лежат в папке dcim/camera? final DisplayImageOptions displayOptions = new DisplayImageOptions.Builder() ...
Программирование Android ToolBar заполонил весь экран! http://www.cyberforum.ru/android-dev/thread1791911.html
Я создавал ToolBar в точности как в видеоуроках, но почему-то у меня он растянулся на весь экран, скриншот внизу, помогите, пожалуйста! toolbar.xml: ?xml version="1.0" encoding="utf-8"?>...
Программирование Android Не получилось использовать данные в намерении Я только учусь, прошу отнестись с пониманием. Сам ответа никак не могу найти. Вроде все перепробовал. Прошу учесть, что задача чисто учебная. Я понимаю, что могу легко добиться результата с помощью... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru