Обработка исключений включена в бесплатные постоянные реализации.
причина этого состоит в том, что Вы возможно используете gcc
для компиляции кода. Если Вы скомпилируете с опцией -###
, то Вы заметите, что она пропускает опцию компоновщика -lstdc++
, когда она вызывает процесс компоновщика. Компиляция с g++
будет включать ту библиотеку, и таким образом символы, определенные в нем.
Вы можете использовать их для абсолютных координат (абсолютных, относительно экрана устройства):
другие методы, getX ()
и getY ()
, должны возвращать вам координаты относительно View
, отправившего их.
Это ограничение для платформы Android.
MotionEvent
иногда возвращает абсолютные координаты X и Y относительно вида, а иногда и относительные координаты относительно предыдущего события движения.
Событие, отправленное как ACTION_DOWN
, всегда будет абсолютным, все остальные события будут другими. Невозможно запросить текущий тип координат в MotionEvent
.
Это означает, что на практике getX ()
и getY ()
бесполезны для многих случаев использования, и вы должны основывать логику вашего приложения на getRawX ()
и getRawY ()
, которые гарантированно возвращают абсолютные координаты относительно экрана устройства.
]При использовании MapView я смог получить относительные координаты X и Y, вычитая из представлений Window.getLeft() и View.getTop() содержимого Window (Window.ID_ANDROID_CONTENT) из MotionEvent.getRawX() и MotionEvent.getRawY() соответственно. [
] []Решение обсуждается здесь:[
] [][]http://andmobidev.blogspot.com/2010/01/getting-relative-coordinates-from.html[][
] []Это должно работать для определения относительных координат X и Y в основном представлении макета.[
].