Исходя из того, что на самом деле представляет собой холст, я не верю, что у него есть какой-то способ узнать, где расположены фигуры, нарисованные на нем.
Отслеживание того, где нарисованы фигуры (с координатами, к сожалению), и проверка этого по отношению к событию касания может быть единственным вариантом.
Я говорю «может», потому что я не эксперт в этой области, но я много работал с холстом в прошлом.
Тем не менее, есть либы, чтобыупростить это.В одном картографическом приложении, над которым я работал, я использовал это:
https://github.com/onlylemi/MapView
Эта библиотека имеет встроенную поддержку для определения того, где на карте находятся объекты (фигуры).Тем не менее, эта библиотека использует координаты и события касания внизу (как видно из их класса MarkLayer.java), как и большинство из них, которые вы найдете.