С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.61/28: Рейтинг темы: голосов - 28, средняя оценка - 4.61
Levabala
0 / 0 / 2
Регистрация: 28.06.2013
Сообщений: 18
1

Получение координат нажатия

09.08.2013, 13:15. Просмотров 5375. Ответов 17
Метки нет (Все метки)

У меня проблема - я только начал разрабатывать под android и одна из первых трудностей - как обработать нажатие (считать координаты, силу нажатия). Помогите кто разбирается в этом.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2013, 13:15
Ответы с готовыми решениями:

Получение координат местонахождения
Здравствуйте. В приложении есть необходимость получать значение координат...

Получение координат по адресу
Всем привет, наткнулся на такую реализацию. public LatLng...

Получение координат View во время анимации
Требуется во время выполнения анимации обработать клик по вьюхе, которая...

Получение координат gps из своего класса (getLastKnownLocation)
Один из методов класса содержит Location location; LocationManager lm =...

Определение координат нажатия
Всем доброго времени суток. Подскажите пожалуйста как определить координаты...

17
Wenceslaus
Android Developer
130 / 130 / 6
Регистрация: 05.07.2013
Сообщений: 205
09.08.2013, 18:31 2

Не по теме:

Цитата Сообщение от Levabala Посмотреть сообщение
У меня проблема - я только начал разрабатывать под android
Решение проблемы: бросьте разрабатывать под android.


А что бы преодолеть трудности, нужно очень много читать.
1
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
10.08.2013, 13:03 3
Решение проблемы: бросьте разрабатывать под android
Злые Вы!

У меня этот вопрос тоже возникал, но не был срочным... Решения так и не нашел! То что я вычитал - обрабатываются нажатия для каждого конретного вьюва (кнопки, ЭЛЕМЕНТА листа, формы ВОКРУГ кнопок), а не всего сразу. Была "мечта" - сделать мультитатч список, где движениями 2х пальцев можно менять: шрифт или детализацию элементов или даже размер строк. Такое возможно? Или нужно РИСОВАТЬ свой список на едином "листе" (общем вьюве)
0
Wenceslaus
Android Developer
130 / 130 / 6
Регистрация: 05.07.2013
Сообщений: 205
12.08.2013, 11:20 4

Не по теме:

Цитата Сообщение от Tester64 Посмотреть сообщение
Злые Вы!
Отнюдь. Хотя, это зависит от того, под каким углом смотреть на совет.


Цитата Сообщение от Tester64 Посмотреть сообщение
Решения так и не нашел!
Решение постом выше.
Цитата Сообщение от Tester64 Посмотреть сообщение
Была "мечта" - (длинное описание мечты). Такое возможно?
Вполне. Или вопрос в том, как это (мультитатч список, где движениями 2х пальцев можно менять: шрифт или детализацию элементов или даже размер строк) сделать?
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
14.08.2013, 14:53 5
Цитата Сообщение от Wenceslaus Посмотреть сообщение
, как это (мультитатч список, где движениями 2х пальцев можно менять: шрифт или детализацию элементов или даже размер строк) сделать?
Как менять шрифт - я знаю. Я не знаю как поймать глобальный мультитатч, а не нажатие либо на элементе 1,2,..,н, либо на форме вокруг списка (или на случайно пальцем захваченой кнопке)... Как пойамать ОБЩИЙ мультитатч - поверх любого элемента формы? Мои прошлые попытки требовали назначить элемент захвата татча, причем только один...
0
verylazy
Заблокирован
14.08.2013, 15:28 6
Цитата Сообщение от Tester64 Посмотреть сообщение
Я не знаю как поймать глобальный мультитатч
можно сделать например так
Java
1
public class MyCoolBestActivity extends Activity implements OnClickListener
и реализовать медод(ы), которые предложит добавить IDE
а уже в
Java
1
2
3
@Override
public void onClick(View v) {
}
вытягивать id нажатого элемента, например
0
Wenceslaus
Android Developer
130 / 130 / 6
Регистрация: 05.07.2013
Сообщений: 205
14.08.2013, 15:36 7
Tester64, разве не получится отследить общее нажатие, если поставить слушатель на контейнер всех View'ов в xml? (Я не пытался, посему и спрашиваю).
Как вариант, можно отследить нажатие на активную область приложения (Activity):
Java
1
2
3
4
5
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
    // обработка общего нажатия
    return super.dispatchTouchEvent(ev);
}
причём он никак не зависит от TouchEvent'ов других View'ов.
0
Salty_Sugar
26 / 26 / 4
Регистрация: 02.04.2012
Сообщений: 142
14.08.2013, 15:52 8
Цитата Сообщение от Levabala Посмотреть сообщение
одна из первых трудностей - как обработать нажатие (считать координаты, силу нажатия)
Ахаха! Силу нажатия невозможно определить!
0
Wenceslaus
Android Developer
130 / 130 / 6
Регистрация: 05.07.2013
Сообщений: 205
14.08.2013, 16:43 9
Salty_Sugar, MotionEvent.getPressure()
2
Yushka
4 / 4 / 0
Регистрация: 24.07.2013
Сообщений: 80
14.08.2013, 16:48 10
Salty_Sugar
Возможно. Существуют тачскрины, обладающие такими свойствами, но их вроде мало.
0
Salty_Sugar
14.08.2013, 17:38
  #11

Не по теме:

Oops!.. :tomatos:
Беру свои слова обратно!

0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
14.08.2013, 18:54 12
Цитата Сообщение от Salty_Sugar Посмотреть сообщение
Ахаха! Силу нажатия невозможно определить!
Силой нажатия можно считать "длительность" нажатия...
0
Wenceslaus
Android Developer
130 / 130 / 6
Регистрация: 05.07.2013
Сообщений: 205
14.08.2013, 19:20 13
Salty_Sugar, на самом деле вы в чём-то правы. Дело всё в том, что сам ёмкостный экран не может в принципе определить силу касания. Утечка тока происходит от факта касания, а не от величины давления на экран. Посему аппаратно это не определяемо..
Но ориентировочно рассчитать можно программно. Палец мягкий и чем сильнее им давить на экран, тем больше площади он будет занимать. Посему, в данном случае, относительно площади прикосновения (кол-ва покрытых пальцем пикселей) и будет рассчитана сила нажатия, а возвращаемые значения, большей частью, будут зависеть от калибровки экрана (настройки ОС). Так что давление здесь нельзя воспринимать за абсолютную величину (разные устройства вернут разные значения при одинаковых касаниях).
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
14.08.2013, 22:20 14
а по поводу координат, setOnTouchListener или переопределить onTouchEvent, будешь получать объект MotionEvent в которого есть методы getX и getY
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
15.08.2013, 03:31 15
Цитата Сообщение от V0v1k Посмотреть сообщение
а по поводу координат, setOnTouchListener или переопределить onTouchEvent, будешь получать объект MotionEvent в которого есть методы getX и getY
Похоже не все так просто... Только что создал форму со списком OnTouch можно определить для элементов формы, причем для каждого элемента отдельно через .setOnTouchListener(this); Причем как определить общий OnTouch еще и на элементы списка - не понял...
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
15.08.2013, 03:35 16
создайте прозрачную View которая будет перекрывать весь UI и задайте для нее setOnTouchListener.
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
15.08.2013, 04:18 17
хотя... беру свои слова назад! Кажется (случайно) получилось!

Добавлено через 19 минут
создайте прозрачную View которая будет перекрывать весь UI и задайте для нее setOnTouchListener.
а как это сделать?
Задумал положить поверх вьюва прозрачную картинку на которой рисовать мультитатч-жесты.
Кстати еще вопрос: не подскажете ссылки на готовые процедуры (Framework) для работы с мультитатчем?
0
Levabala
0 / 0 / 2
Регистрация: 28.06.2013
Сообщений: 18
18.08.2013, 15:23  [ТС] 18
Цитата Сообщение от Wenceslaus Посмотреть сообщение

Не по теме:


Решение проблемы: бросьте разрабатывать под android.


А что бы преодолеть трудности, нужно очень много читать.
Спасибо за вторую ссылку! А вот решение проблемы вы как-то странно описали :/

Добавлено через 46 минут
Спасибо всем! Я свою проблему решил (мне хватило одной ссылки), но тему закрываю для себя, так как, в теме ведётся обсуждение. Ещё раз спасибо!
0
18.08.2013, 15:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.08.2013, 15:23

Определение координат курсора и нажатия клавиш
как можно узнать в win32/c++ какая клавиша нажата,и координаты мышы ?

Guide. Определение координат нажатия мыши
Хотелось бы определять координаты клика мыши на axes. Но на них уже может быть...

Запись координат для клика и ожидание нажатия клавиши мыши
Здравия желаю. Я писал программу - кликер в которой мне нужно выполнить такую...


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

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

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