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

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

Войти
Регистрация
Восстановить пароль
 
Tester64
396 / 357 / 44
Регистрация: 22.05.2013
Сообщений: 2,518
#1

Странные тормоза на реактор - Программирование Android

28.11.2013, 22:47. Просмотров 220. Ответов 0
Метки нет (Все метки)

Переписал "по правилам" и получил торможение.

Пишу свой обработчик мультитатча (гибче класики).
Сделал все через свой обработчик onTouch(
Сначала сделал статичный класс с обработчиком onTouch(
Сделал свою процедуру-реактор для отрисовки OnMultiTouch (кручу/зумю картинку)
Вызываю этот обработчик из onTouch( примерно так:
Java
1
2
3
public static int onTouch(View v, MotionEvent event) {
onMultiTouch(utils_MultiTouch.onTouch(v, event));
}
Результат utils_MultiTouch.onTouch пока только int
Все довольно шустро работает (рисует все 5 пальцев с истрией)

Подучил теорию... решил переписать на реакторах (грамотнее, больше возможностей, легче передавать сложные параметры)
Создал в классе MultiTouch
Java
1
2
3
4
5
6
7
8
9
10
    public interface onMultiTouch {
        public void onMultiTouch(int oper);
    }
    private static onMultiTouch out_onMultiTouch;
    public void setOnMultiTouch(onMultiTouch _onMultiTouch) {
        this.out_onMultiTouch = _onMultiTouch;
    }
    private static void _out(int event) {
        if (out_onMultiTouch != null ) out_onMultiTouch.onMultiTouch(event);
    }
и вызываю в мультитатч обработчике _out(123) когда нужно (со старым кодом реакции).

заменил в рабочем классе (там где рисую)
onMultiTouch(utils_MultiTouch.onTouch(v, event));
на
utils_MultiTouch.onTouch(v, event);
добавил
private utils_MultiTouch multiTouch = new utils_MultiTouch();
multiTouch.setOnMultiTouch(new utils_MultiTouch.onMultiTouch() {
@Override
public void onMultiTouch(int oper) {
onMultiTouch(oper);// старый обработчик
}
});


Обработчиков больше не стало(пока). Ничего не изменилось, но onMultiTouch вызывается раза в 2 дольше. Явное торможение при отрисовке пальцев (очень хорошо видно на тонких линиях)
Единственное подозрение на то что класс мультитатча статик.

Вопрос: У меня руки кривые или обработчик зря использовал - он изначально задумывался как более удобный, но тормознутый? Где накосячил? Прежде чем переписывать все с нуля (убирать статик - много менять), хотелось бы узнать Ваше мнение.
Еще знаю есть другая технология реакторов - добавление в шапку активити и @Override onMultiTouch. Это поможет?
В моей схеме реактор конечно НАМНОГО удобнее будет, но если дальше будет еще больше тормозов, прийдется отказаться от "накручивания" проекта вообще...

В идеале (планируется) вместо одного кода реактор должен давать список кодов вместо одного для обработки рисунком - тянем и провернули и зумировали и удерживаем уже 2 секунды; клик и дблклик с задержкой в 3 секунды.... А вместо таблицы кодов с кучей параметров проще вызывать несколько обработок с разными операциями на одно действие пользователя/пальца.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2013, 22:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Странные тормоза на реактор (Программирование Android):

Создать свой "реактор" - Программирование Android
Как вставить СВОЙ обработчик СВОЕГО события? Пробую написать свой класс обработки мультитатча (MyMulti). За основу взял обработку...

Тормоза анимации - Программирование Android
Есть некоторое приложение с анимацией. Анимация выводится на SurfaceView и сделана таким образом, что примерно 2/3 экрана движутся с...

Eclipse ndk странные ошибки - Программирование Android
Здравствуйте! Вот мой код: com_contedevel_tests_SpeedTest.h /* DO NOT EDIT THIS FILE - it is machine generated */ #include...

Странные ошибки при компиляции проекта - Программирование Android
Доброго дня, форумчане! Создавал проект вида Списка контактов, но для списка резюме, выдаёт ошибку со строки: View root =...

Странные зависания и тормоза во время игры - Видеокарты
Здравствуйте, Немного необычный у меня вопрос, прошу прощения если что. Я веду на ютьюбе канал по ретро-играм, поэтому приходится...

Странные тормоза Toshiba Satellite l850d-c8s - Ремонт ноутбуков
Уже довольно давно замечаю странные тормоза своего ноута, но никак не могу найти причину. Проверял: Оперативу - memtest86+ - все...

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

Word automation + Windows server 2008 R2 = тормоза(очень сильные тормоза) - C++ COM
Здравствуйте! Есть код, написанный правда на делфи, который экспортирует содержимое ТХТ файла в DOS кодировке в WORD. Попутно, если...

Тормоза с XP - Антивирусы
Недавно удалил Avast и поставил лицензионный Доктор Веб. Начались проблемы - открытие любых файлов идет на тормозах. Объсните, в чём...

Тормоза в играх - Windows 7
В общем, на Win7 x64 подтормаживают игры. Дело было давненько, месяца три назад. Комп работал после установки новой чистой оси уже пару...

Тормоза системы - Сети
Рисую ситуацию: офисное здание 5 этажей. На пятом этаже 9 компьютеров. На первом этаже 6. Вся вот эта вот основная техника, железо...


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

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

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