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

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

Войти
Регистрация
Восстановить пароль
 
sergei11
3 / 3 / 0
Регистрация: 29.10.2013
Сообщений: 33
#1

Помоегите разобраться с MultiTouch - Программирование Android

24.12.2014, 08:49. Просмотров 308. Ответов 0
Метки нет (Все метки)

Пример кода из этой книги http://shop.oreilly.com/product/0636920023005.do
Касаюсь двумя пальцами - всё ок, нарисовало 2 линии.
После этого касаюсь одним пальцем - java.lang.IllegalArgumentException: pointerIndex out of range
Код:
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
public boolean onTouch(View v, MotionEvent event) {
        int action = event.getActionMasked();
        int idx;
        int n;
        switch (action) {
            case MotionEvent.ACTION_DOWN:
            case MotionEvent.ACTION_POINTER_DOWN:
                idx = MotionEventCompat.getActionIndex(event);
                tracks.add(event.getPointerId(idx));
                break;
            case MotionEvent.ACTION_POINTER_UP:
                idx = MotionEventCompat.getActionIndex(event);
                tracks.remove(event.getPointerId(idx));
                break;
            case MotionEvent.ACTION_MOVE:
                n = event.getHistorySize();
                for (Integer i : tracks) {
                    idx = event.findPointerIndex(i.intValue());
                    for (int j = 0; j < n; j++) {
                        addDot(
                                dots,
                                event.getHistoricalX(idx, j),
                                event.getHistoricalY(idx, j),
                                event.getHistoricalPressure(idx, j),
                                event.getHistoricalSize(idx, j)
                        );
                    }
                }
                break;
            default:
                return false;
        }
        for (Integer i: tracks){
            idx = event.findPointerIndex(i.intValue());
            addDot(
                    dots,
                    event.getX(idx),
                    event.getY(idx),
                    event.getPressure(idx),
                    event.getSize(idx)
            );
        }
        return true;
    }
Проект целиком: https://github.com/sergei-bespalov/M...e/master/Dots2
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2014, 08:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Помоегите разобраться с MultiTouch (Программирование Android):

Qml multitouch - C++ Qt
Здравствуйте, имеется такой код: Window { visible: true width: 640 height: 480 title: qsTr(&quot;Hello World&quot;) ...

Возможно ли обычным TouchPad-ом воспринимать MultiTouch жесты - C#
Возможно ли обычным TouchPad-ом воспринимать MultiTouch жесты, или же это технически не возможно на некоторых моделях. Если такое возможно,...

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

Задали работу, не могу разобраться. Используется делфи 10, не могу разобраться, как это сделать - Delphi
В одномерном массиве, состоящем из n вещественных элементов, вычислить: минимальный элемент массива и сумму элементов массива,...

Разобраться!! - Pascal
Объясните, пожалуйста! Как поменять массивы? Сам массив что обозначает.(напримаер: а). обозначает номер массива, а &quot;а&quot;? Как вывести...

разобраться с GET - PHP
Есть ссылка вида: http://sajt.ru/cat/1/2/ и есть $id = intval($_GET); как сделать чтобы в переменной $id было первое число, а...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2014, 08:49
Привет! Вот еще темы с ответами:

разобраться с WHILE и DO WHILE - C (СИ)
Почему если я x+=0.1 ставлю вначале цикла то все норм работает, только вот значение в точке х=1 оно пропускает(ну понятно почему) А вот...

разобраться - Delphi
Здравствуйте помогите разобраться, чего не хватает описанию модуля unit Unit1; interface uses Windows, Messages, SysUtils,...

Разобраться в js - JavaScript
Объясните как работает скрипт, это библиотека jquery.isotope.min.js $(function(){ var $container =...

Разобраться с темой - WordPress
Прошу помощи: срочно надо разобраться с темой http://zenphotothemes.net/elandel/ Не могу установить и понять как ее настроить... при...


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

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

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