Jump to content
k0de

[TfgMap] Не работает событие OnTouch

Recommended Posts

Здравствуйте.

Если на событие кнопки  OnTouch повесить код:

 if AAction = TfgTouchAction.Up  then fgLabel19.Text := 'Up';
 if AAction = TfgTouchAction.Down  then fgLabel19.Text := 'Down';

То всё норм отрабатывает. 

А если на fgMap то ничего не просиходит.

Почему так, и как исправить?

Share this post


Link to post
Share on other sites
Posted (edited)

Задача в целом это работа с картой и меткой по типу как в такси. 

Надо что бы был маячок над картой. Что бы под маячком были известны координаты. Что бы можно было начать двигаться по карте и когда прекратиться перемещение, то выполнить геокодинг.

Вот как в яндекс такси. Открывается карта и там где маячок стоит, получаем адрес через геокодинг. Потом тыкаем пальцев карту и начинаем перемещаться по карте. Как только отжали карту, взяли координаты и получили снова адрес.

Edited by k0de

Share this post


Link to post
Share on other sites

Нативное это хорошо. Но у меня нет такого скилла что бы нативное тянуть. ((

А если начну скилл тащить по андроид студио, то тогда возникает вопрос зачем тогда мне delphi и fgx и fmx?

Тем более что в данном случае, на fgButton OnTouch работает. Для fgMap он тоже есть, но судя по всему не пашет. Как по мне надо или сделать так что OnTouch работал или убрать его из списка событий.

Я думаю в этом то и суть наших задач (имею ввиду тех кто юзает fgx), что бы пытаться сделать реальные проекты и отписываться чего по ходу не хватает или не работет, что бы библиотека могла развиваться и отвечать требованиям пользователей.

 

Я к тому что если это "баг", то пойду багу заводить. А если у меня руки кривые, то что бы тыкнули меня куда надо)

  • Like 1

Share this post


Link to post
Share on other sites

Вы меня не поняли, нативное, это не 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;

Ярослав физически не сможет портировать все АПИ в удобное использование.

Потому, он дает возможность это использовать, дальше "сама, сама, сама."

Share this post


Link to post
Share on other sites
Posted (edited)
3 часа назад, k0de сказал:

fgButton OnTouch работает. Для fgMap он тоже есть, но судя по всему не пашет

Конечно, Кнопка это простой контрол, карта, это нагромождение всего. Причем, что Вы получите в Тап на карте, сам факт ?

Вам это ничем не поможет 

Edited by Stas

Share this post


Link to post
Share on other sites
3 часа назад, k0de сказал:

А если начну скилл тащить по андроид студио, то тогда возникает вопрос зачем тогда мне delphi и fgx и fmx?

Правильно, только андроид студия не причем. Работая с FGX, Вы заранее обрекаете себя на определенные рамки. Многое на дельфи без java просто нельзя.Это как Велимира Хлебникова на английский перевести. Но, скорость разработки визуального интерфейса (в рамках, конечно).  Знакомый язык. Призрачная возможность перевести интерфейс на IOS. Используя чистый java, Вы такой возможности лишены в принципе. Именно поэтому я мониторил библиотеку Бровина, с тех пор как узнал о ней. 

Вот так вот.

Спасибо, извините за многословность.

Share this post


Link to post
Share on other sites

1. Я добавил методы для конвертации координат. Эти методы помогут вам перевести локальные координаты вашей точки в географические координаты на карте.

Например, если вы отображаете маячок через TfgImage. То при подтверждении позиции (как в яндекс такси или в чем-то другом), вы просто сможете сконвертировать координаты TfgImage в географические через TfgMap.PositionToCoordinate.

2. Я добавил новое событие для информирования о том, что перемещение камеры закончилось.

3. OnTouch действительно не работает. Это ограничение GoogleMap.

Спасибо, что нашли. Сделал обходное решение. Так что теперь событие onTouch будет работать.Исправлено в 1.3.0.0.

  • Like 5

Share this post


Link to post
Share on other sites

Спасибо большое! Буду ждать выпуска 1.3.0.0

  • Like 1

Share this post


Link to post
Share on other sites

  • Similar Content

    • By Stas
      Ярослав, нижайшая просьба
      Ускорьте пожалуйста работу c Subject или хотя бы озвучьте сроки, когда ожидать.
      Думаю либо делать на Unigui (я там на хорошем счету), либо у Вас
      А если сделаете собственные слои, готов оплатить год подписки сразу.
      Спасибо
    • By Stas
      Добрый день, очень интересная ошибка
      При добавлении маркера при движении по карте
       
      procedure TFormMain.fgMap1CameraChanging(Sender: TObject); begin  try   fgMap1.AddMarker(fgMap1.CameraTarget,'');  except   on E:Exception do TfgDialogs.ShowMessage(E.Message);  end; end; Происходит вот такое.

      Если сделать отложенное добавление через таймер, ошибки не происходит.
      Спасибо.
    • By Stas
      Добрый вечер, Карты играют важную роль в жизни человека, они приятны глазу и выручают людей в сложных ситуациях (скажу вам как человек с топографическим кретинизмом).
      То что, представил Ярослав, приятно глазу, но пока не выручает.
      Потому пожелалки такие:
      Предоставить возможность работы со всеми типами объектов, возможные в ГуглеМапс ( далее ГМ) Возможность отображения контролов, которые возможны в ГМ (как-то масштабирование, мое местоположение, и т.д.) Управление объектами  программно (к примеру отобразить информационное окно, без клика пользователем) Собственные слои, это самая сложная часть имхо, потому что я потратил на нее два года своей постылой жизни, и не добился результатов AndroidBridge возвращает не тот интерфейс, но возможно Ярослав и Ко справятся Прошу вас, поддержите меня, ибо как говорил Фукс (капитан Врунгель), карты это мой хлеб.
    • By Stas
      Доброе утро, всех с Новым годом
      И таки касательно карт.
      Воспользовался примером , любезно предоставленным   Ярославом https://forum.fgx-native.com/applications/core/interface/file/attachment.php?id=34
      Работа приложения зависит либо от устройства, либо от версии Андроида
      1) Redmi note 5 Версия андроида 9 - падение без объяснения причин сразу после запуска (32, 64 без разницы)
      2) Nexus 2013  Версия андроида 6 -  Прекрасная работа (32, конечно)
      Использовался Delphi community Edittion 10.3
      Разрешения не были запрошены, но были предоставлены в настройках приложения.
      Если у кого-то будет возможность протестировать на другом устройстве, но тоже 9-й Андроид, буду весьма признателен.
      Спасибо
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...