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

Мягкий лонг-клик по кнопке с таймером - Программирование 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 Не получилось использовать данные в намерении Я только учусь, прошу отнестись с пониманием. Сам ответа никак не могу найти. Вроде все перепробовал. Прошу учесть, что задача чисто учебная. Я понимаю, что могу легко добиться результата с помощью... подробнее

Показать сообщение отдельно
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
10.08.2016, 12:01
писал ровно 10 минут, дарю
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import android.content.Context;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Button;
 
public class AwesomeButton extends Button implements View.OnLongClickListener, View.OnTouchListener, View.OnClickListener {
 
    private int count = 0;
    private final long DELAY = 100;
 
    public AwesomeButton(Context context) {
        super(context);
        init();
    }
 
    public AwesomeButton(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }
 
    private void init() {
        setOnClickListener(this);
        setOnLongClickListener(this);
        setOnTouchListener(this);
    }
 
    @Override
    public boolean onLongClick(View view) {
        postDelayed(action, DELAY);
        return false;
    }
 
    @Override
    public boolean onTouch(View view, MotionEvent e) {
        switch (e.getAction()) {
            case MotionEvent.ACTION_CANCEL:
                stopTimer();
                break;
            case MotionEvent.ACTION_UP:
                stopTimer();
                break;
        }
        return false;
    }
 
    private void stopTimer() {
        getHandler().removeCallbacks(action);
    }
 
    @Override
    public void onClick(View view) {
        tickCounter();
    }
 
    private void tickCounter() {
        count++;
        setText(String.valueOf(count));
    }
 
    private final Runnable action = new Runnable() {
        @Override
        public void run() {
            tickCounter();
            postDelayed(action, DELAY);
        }
    };
}
в разметке юзается примерно так
XML
1
2
3
4
    <com.example.mytestapplication.AwesomeButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="PRESS ME" />
счетчик внутри кнопки, но я думаю дописать пару строк чтобы отправлял counter или сделать setter/getter для него - не порблема?
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru