k0de Posted June 6, 2020 Posted June 6, 2020 Здравствуйте. Если на событие кнопки OnTouch повесить код: if AAction = TfgTouchAction.Up then fgLabel19.Text := 'Up'; if AAction = TfgTouchAction.Down then fgLabel19.Text := 'Down'; То всё норм отрабатывает. А если на fgMap то ничего не просиходит. Почему так, и как исправить?
Administrators Viktor Akselrod Posted June 6, 2020 Administrators Posted June 6, 2020 Какую задачу вы решаете в целом?
k0de Posted June 6, 2020 Author Posted June 6, 2020 (edited) Задача в целом это работа с картой и меткой по типу как в такси. Надо что бы был маячок над картой. Что бы под маячком были известны координаты. Что бы можно было начать двигаться по карте и когда прекратиться перемещение, то выполнить геокодинг. Вот как в яндекс такси. Открывается карта и там где маячок стоит, получаем адрес через геокодинг. Потом тыкаем пальцев карту и начинаем перемещаться по карте. Как только отжали карту, взяли координаты и получили снова адрес. Edited June 6, 2020 by k0de
Stas Posted June 7, 2020 Posted June 7, 2020 Также Вам необходимо использование нативного интерфейса https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnMapClickListener
k0de Posted June 7, 2020 Author Posted June 7, 2020 Нативное это хорошо. Но у меня нет такого скилла что бы нативное тянуть. (( А если начну скилл тащить по андроид студио, то тогда возникает вопрос зачем тогда мне delphi и fgx и fmx? Тем более что в данном случае, на fgButton OnTouch работает. Для fgMap он тоже есть, но судя по всему не пашет. Как по мне надо или сделать так что OnTouch работал или убрать его из списка событий. Я думаю в этом то и суть наших задач (имею ввиду тех кто юзает fgx), что бы пытаться сделать реальные проекты и отписываться чего по ходу не хватает или не работет, что бы библиотека могла развиваться и отвечать требованиям пользователей. Я к тому что если это "баг", то пойду багу заводить. А если у меня руки кривые, то что бы тыкнули меня куда надо) 1
Stas Posted June 7, 2020 Posted June 7, 2020 Вы меня не поняли, нативное, это не java, это API Вот к примеру var gm:TJGoogleMap; begin gm:=TfgAndroidMap(TfgAndroidControlHandle(fMap.Handle).NativeControl).GoogleMap; Lat1:=gm.getProjection.getVisibleRegion.latLngBounds.northeast.latitude; Lon1:=gm.getProjection.getVisibleRegion.latLngBounds.northeast.longitude; Lat2:=gm.getProjection.getVisibleRegion.latLngBounds.southwest.latitude; Lon2:=gm.getProjection.getVisibleRegion.latLngBounds.southwest.longitude; Ярослав физически не сможет портировать все АПИ в удобное использование. Потому, он дает возможность это использовать, дальше "сама, сама, сама."
Stas Posted June 7, 2020 Posted June 7, 2020 (edited) 3 часа назад, k0de сказал: fgButton OnTouch работает. Для fgMap он тоже есть, но судя по всему не пашет Конечно, Кнопка это простой контрол, карта, это нагромождение всего. Причем, что Вы получите в Тап на карте, сам факт ? Вам это ничем не поможет Edited June 7, 2020 by Stas
Stas Posted June 7, 2020 Posted June 7, 2020 3 часа назад, k0de сказал: А если начну скилл тащить по андроид студио, то тогда возникает вопрос зачем тогда мне delphi и fgx и fmx? Правильно, только андроид студия не причем. Работая с FGX, Вы заранее обрекаете себя на определенные рамки. Многое на дельфи без java просто нельзя.Это как Велимира Хлебникова на английский перевести. Но, скорость разработки визуального интерфейса (в рамках, конечно). Знакомый язык. Призрачная возможность перевести интерфейс на IOS. Используя чистый java, Вы такой возможности лишены в принципе. Именно поэтому я мониторил библиотеку Бровина, с тех пор как узнал о ней. Вот так вот. Спасибо, извините за многословность.
Administrators Yaroslav Brovin Posted June 7, 2020 Administrators Posted June 7, 2020 1. Я добавил методы для конвертации координат. Эти методы помогут вам перевести локальные координаты вашей точки в географические координаты на карте. Например, если вы отображаете маячок через TfgImage. То при подтверждении позиции (как в яндекс такси или в чем-то другом), вы просто сможете сконвертировать координаты TfgImage в географические через TfgMap.PositionToCoordinate. 2. Я добавил новое событие для информирования о том, что перемещение камеры закончилось. 3. OnTouch действительно не работает. Это ограничение GoogleMap. Спасибо, что нашли. Сделал обходное решение. Так что теперь событие onTouch будет работать.Исправлено в 1.3.0.0. 5
Recommended Posts