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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 29, средняя оценка - 4.83
maxon887
12 / 12 / 3
Регистрация: 05.06.2012
Сообщений: 280
#1

Warning: Custom view overrides onTouchEvent but not performClick - Программирование Android

15.09.2014, 12:22. Просмотров 3614. Ответов 2
Метки нет (Все метки)

У меня есть кастомный view который перегружает onTouchEvent следующим образом. На котором и висит варнинг.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
    @Override
    public boolean onTouchEvent(MotionEvent event){
        switch(event.getAction()){
        case MotionEvent.ACTION_DOWN:
            selectX = (int)(event.getX()/width);
            selectY = (int)(event.getY()/height);
            invalidate();
            break;
        default:
            return super.onTouchEvent(event);
        }
        return true;
    }
из метода видно что при событи я всего лишь забираю координаты нажатия и перерисовываю экран.

В описании предупреждения сказано следующие:
Кликните здесь для просмотра всего текста
If a View that overrides onTouchEvent or uses an
OnTouchListener does not also implement performClick and call
it when clicks are detected, the View may not handle accessibility
actions properly. Logic handling the click actions should ideally
be placed in View#performClick as some accessibility services
invoke performClick when a click action should occur.

Из всего выщесказанного, я понял только то что, он хочет что бы я обрабатывал логику в performClick. Но это не возможно так как, туда не попадают координаты нажать.
Помогите плис если понимаете в чём дело.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2014, 12:22     Warning: Custom view overrides onTouchEvent but not performClick
Посмотрите здесь:
Gallery and custom view Android
Android Custom view . is missing constructor used by tools
Android Многократное использование Custom View - как
Android Программно задавать layout_gravity для custom view
Android Как создавать custom view компоненты с функционалом и присваивать им id?
Spinner performClick выполняет OnItemSelected Android
Android В чем разница (View view) и (View v)
Разгрузка onTouchEvent Android
Android onTouchEvent в потоке
Android Не срабатывает onTouchEvent
Android OnTouchEvent - нарисовать точку
Обработка onTouchEvent в Activity Android

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2414 / 1859 / 583
Регистрация: 12.05.2014
Сообщений: 6,596
Завершенные тесты: 1
15.09.2014, 12:45     Warning: Custom view overrides onTouchEvent but not performClick #2
просто перед return true; вызывай этот метод и все
maxon887
12 / 12 / 3
Регистрация: 05.06.2012
Сообщений: 280
15.09.2014, 13:00  [ТС]     Warning: Custom view overrides onTouchEvent but not performClick #3
Паблито, нет, он хочет что бы я ещё и перегрузил performClick().
Это впринципе не сложно, просто дописать ещё
Java
1
2
3
4
    @Override
    public boolean performClick() {
        return super.performClick();
    }
и вызвать его из онТач, но смысла в этом я невижу никакого
Yandex
Объявления
15.09.2014, 13:00     Warning: Custom view overrides onTouchEvent but not performClick
Ответ Создать тему
Опции темы

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