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

Одновременное срабатывание onTouch и onItemLongClick - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Воспользоваться РУТОМ http://www.cyberforum.ru/android-dev/thread1071888.html
Подскажите как можно воспользоваться "рутированостью" устройства. У меня стоит программка-демон Superuser, которая раздает или запрещает права рута. Некоторые проги ПРОСЯТ у нее разрешения на рут, а...
Программирование Android Спойлер Кто-нибудь подскажет, как в активности сделать спойлер? Для экономии места на экране... http://www.cyberforum.ru/android-dev/thread1071626.html
Если смысл в xml разметке? Программирование Android
Здравствуйте. Возможно, кому-то покажется мой вопрос невежественным, но все же: Есть ли смысл пользоваться xml разметкой, если все создание тех же кнопок можно прописать в .java? Хочу...
Программирование Android Вывод информации с конкретного сайта
Привет всем. Стоит задача доставать с определенного сайта (новостного характера) заголовок, краткое содержание и, возможно, иллюстрацию. кроме RSS есть еще какие-либо варианты решения? ...
Программирование Android UI rss читалки http://www.cyberforum.ru/android-dev/thread1070922.html
Доброго времени суток. Хочу сделать читалку rss для определённого сайта. Самою большую трудность как не странно я встретил в самом начале. Я не знаю как правильно называется построение активити,...
Программирование Android Стоимость приложения, как оценить? Всем привет. Наткнулся на такой вот вопрос. Написал приложение - довольно простое, без дизайна - специфичный калькулятор. Приложение для клиентов компани, распространятся будет естественно... подробнее

Показать сообщение отдельно
Severomor1
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 36

Одновременное срабатывание onTouch и onItemLongClick - Программирование Android

15.01.2014, 12:30. Просмотров 877. Ответов 4
Метки (Все метки)

Добрый день, коллеги,
Есть два обработчика: OnTouchListener и onItemLongClickListener. Первый нужен для определения свайпа элемента ListView, второй понятно для чего. Проблема в том, что в момент свайпа зачастую срабатывает и onItemLongClickListener. Как бы от этого избавиться? Можно ли как то увеличить время лонгклика? Или есть решение поизящнее?

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
lv.setOnTouchListener(new View.OnTouchListener() {
            float x1 = Float.NaN, y1 = Float.NaN, x2=Float.NaN, y2=Float.NaN;
            static final int delta=400;
 
            @Override
            public boolean onTouch(View view, MotionEvent event) {
                switch (event.getAction()){
                    case MotionEvent.ACTION_DOWN:
                        x1=event.getX();
                        y1=event.getY();
                        return false;
 
                    case MotionEvent.ACTION_UP:
                        x2=event.getX();
                        y2=event.getY();
                        itemPosition=lv.pointToPosition((int) x2, (int) y2);
 
 
                        if (x2-x1>delta){
                            rightSwipeHandler();
                            return true;
                        }
                        else if (x1-x2>delta){
                            leftSwipeHandler(itemPosition);
                            return true;
                        }
 
                    default:
                        return false;
                }
 
            }
 
        });
 
 
 lv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                     itemPosition=position;
                     actionMode = startActionMode(callback);
            return true;
            }
        });
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru