Перейти к содержанию
Fire Monkey от А до Я

AndroidHalfNoob

Пользователи
  • Постов

    290
  • Зарегистрирован

  • Посещение

Весь контент AndroidHalfNoob

  1. да, если ты работаешь не с маркером, а с описанием маркера. это ведь очевидно, что вбил в него последнее, то и прочитал а если читать с маркера, то будешь получать правильные данные Спасибо за пояснение.... просто уже глаз "замылился" и немного затупил. разобрался. все работает как надо.
  2. Кстати.... у тебя идет нажатие на саму карту. потом ты добавляешь маркер, потом нажимаешь на маркер и выдается его подпись, но для повторного открытия формы ты опять нажимаешь на карту, а мне надо чтобы на маркер нажимаешь и открывалась вторая форма. сейчас в принципе так и работает, но я выяснил что в памяти всегда хранится дискриптор последнего добавленного маркера на карту. добавлял Маркер1, Маркер2, Маркер3. по очереди из Подпись выводил в Мемо и если нажимаешь на второй маркер то в Мемо добавляется Маркер3.
  3. да. видео это я видел. но факт есть фактом. выложу свое видео позже.
  4. Не знаю, что произошло, но заработало. ошибок не выдается. вторая форма появляется. Сделал при нажатии на кнопку. Хотя раньше не зависимо на каком элементе делаешь вызов второй формы, приложение вываливалось с ошибкой о приостановке. По нажатию на маркер так же проблема осталась. появляется подпись маркера но форма не появляется.
  5. Создал новый апи_кей и та же ботва. Приложение или просто черный фон. Илт вываливается с ошибкой или просто сразу закрывается....
  6. Скорее всего лажа какая то с апикей. так как скачал твой MapsEngine и карта нормаль отображается. Но что там может приключиться с апикей я искренне хз так как скидывал срины и там вроде все просто. в 3 местах указываешь данные и еще в проекте подключаешь поддержку работы с сетью.
  7. 8.3.01. (2385995-034) и нет кнопки "Обновить". Активна только "Отключить"
  8. Телефон самсунг 4 S mini все сервисы вроде обновлены. Google карты версии 9.17.1 прошивка родная Такая же фигня на другом телефоне Zopo ZP980 запускается и Мап-Вивер серый фон
  9. Удалил. запустилось, но Мап-Вивер серого цвета. и карта не отображается. По Мап-Виверу клацаю, и в Мемо добавляется инфа, но карты не видно.
  10. Короче фигня какая то с этим FMX. Создаю новый проект. добавляю Мап-вивер. Задаю в свойствах проекта В итоге запускается приложение и просто черный экран.
  11. Вписал. создал новый проект и к нему подключил формы. Приложение запускается и тут же вываливается с сообщением. Приложение остановлено. А если открываю твой проект то при F9 выдается сообщение
  12. А есть какая то разница какой api_key вписывать? точнее если я в одном проекте использовал один ключ а потом начал другой делать и такой же api_key использовал. Просто в чем проблема.... пишу прогу на ХЕ8. скидываю все исходники и на 10 Seattle компилирую. приложение запускается но карта серым фоном и не отображается.
  13. Хорошо. вроде разобрался... при нажатии на карту рисуется маркер и в Мемо добавляется запись. Но главная проблема то так и осталась... при нажатии на созданный маркер инфа в мемо не добавляется и не открывается другая форма. Получается процедура procedure TForm3.MapView1MarkerClick(Marker: TMapMarker); begin try TThread.Synchronize(nil, procedure begin Memo1.Lines.Add(tapMarker.Descriptor.Title) ; if assigned(tapMarker) then tapMarker.Remove; MapView1.Enabled:=false; Form4.Show; end); finally ShowMessage('ошибка формы'); end; end; не работает
  14. что это за бред? Memo1.Lines.Add(tapDescr.Snippet); FreeAndNil(tapMarker); ну да.... запарился уже. с утра разные варианты перебираю. и еще... не могу понять в чем отличия между маркером и дискриптором? когда выполняется процедура tapDescr := TMapMarkerDescriptor.Create(Position, 'Событие'+inttostr(s)); tapDescr.Snippet:='ertert'+#13+'123' ; MapView1.AddMarker(tapDescr); tapDescr.Visible :=True; то маркер на карте тоже добавляется. хотя тут работа с дискрипторами идет.
  15. unit Unit3; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Maps, FMX.Controls.Presentation, FMX.StdCtrls, FMX.ListBox, FireDAC.Stan.Intf, FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf, FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys, FireDAC.Phys.SQLite, FireDAC.Phys.SQLiteDef, FireDAC.Stan.ExprFuncs, FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt, System.Rtti, Data.Bind.EngExt, Fmx.Bind.DBEngExt, Fmx.Bind.Grid, System.Bindings.Outputs, Fmx.Bind.Editors, Data.Bind.Components, Data.Bind.Grid, Data.Bind.DBScope, FMX.Layouts, FMX.Grid, Data.DB, FireDAC.Comp.DataSet, FireDAC.Comp.Client,System.IOUtils, FireDAC.FMXUI.Wait,System.JSON, FireDAC.Comp.UI, FireDAC.Stan.StorageJSON, FMX.TabControl, FMX.ScrollBox, FMX.Memo, System.sensors,FMX.Edit, System.Sensors.Components, FMX.Objects, System.Actions, FMX.ActnList, FMX.StdActns, FMX.MediaLibrary.Actions,System.Threading, Unit5; type TForm3 = class(TForm) Panel1: TPanel; Panel2: TPanel; ComboBox1: TComboBox; Button1: TButton; FDConnection1: TFDConnection; FDGUIxWaitCursor1: TFDGUIxWaitCursor; FDPhysSQLiteDriverLink1: TFDPhysSQLiteDriverLink; FDTable1: TFDTable; TabControl1: TTabControl; TabItem2: TTabItem; TabItem3: TTabItem; MapView1: TMapView; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Label1: TLabel; Edit1: TEdit; Memo1: TMemo; Label2: TLabel; LocationSensor1: TLocationSensor; Button2: TButton; SpeedButton1: TSpeedButton; ActionList1: TActionList; TakePhotoFromCameraAction1: TTakePhotoFromCameraAction; Panel6: TPanel; Image1: TImage; Button3: TButton; procedure FormActivate(Sender: TObject); procedure ComboBox1Change(Sender: TObject); procedure Button1Click(Sender: TObject); procedure LocationSensor1LocationChanged(Sender: TObject; const OldLocation, NewLocation: TLocationCoord2D); procedure Button2Click(Sender: TObject); procedure TakePhotoFromCameraAction1DidFinishTaking(Image: TBitmap); procedure MapView1MarkerClick(Marker: TMapMarker); procedure MapView1MapLongClick(const Position: TMapCoordinate); procedure MapView1MapClick(const Position: TMapCoordinate); procedure Button3Click(Sender: TObject); private { Private declarations } // List:TObjectList<TMapMarker>; public { Public declarations } end; var Form3: TForm3; s:byte; tapDescr: TMapMarkerDescriptor; tapMarker:TMapMarker; implementation {$R *.fmx} {$R *.NmXhdpiPh.fmx ANDROID} uses Unit4; //{$R *.NmXhdpiPh.fmx ANDROID} //{$R *.LgXhdpiTb.fmx ANDROID} //{$R *.XLgXhdpiTb.fmx ANDROID} procedure TForm3.Button1Click(Sender: TObject); begin Close; end; procedure TForm3.Button2Click(Sender: TObject); begin LocationSensor1.Active:=true; end; procedure TForm3.FormActivate(Sender: TObject); begin s:=0; s:=s+1; mapCenter := TMapCoordinate.Create(56.5031777,85.0110343); MapView1.Location := mapCenter; MapView1.Zoom:=11.5; TabControl1.ActiveTab:=TabItem2; end; procedure TForm3.LocationSensor1LocationChanged(Sender: TObject; const OldLocation, NewLocation: TLocationCoord2D); var Latitude,Longitude:Double; begin Latitude:= NewLocation.Latitude; Longitude:= NewLocation.Longitude; end; procedure TForm3.MapView1MapClick(const Position: TMapCoordinate); begin s:=s+1; tapDescr := TMapMarkerDescriptor.Create(Position, 'Маркер'+inttostr(s)); tapDescr.Snippet:='ertert' ; MapView1.AddMarker(tapDescr); tapDescr.Visible :=True; end; procedure TForm3.MapView1MarkerClick(Marker: TMapMarker); begin try TThread.Synchronize(nil, procedure begin Memo1.Lines.Add(tapDescr.Snippet); FreeAndNil(tapMarker); MapView1.Enabled:=false; Form4.Show; end); finally ShowMessage('ошибка формы'); end; end; procedure TForm3.TakePhotoFromCameraAction1DidFinishTaking(Image: TBitmap); begin Image1.Bitmap.Assign(Image); end; end. Главная проблема в процедуре TForm3.MapView1MarkerClick по замыслу при нажатии на маркер должна открываться другая форма и там уже на основе подписи маркера ищется информация в базе данных. Сейчас процедура нажатия на маркер выдает только его подпись и все... ни чего не происходит.
  16. Эксперемент №4 выяснил что в памяти хранится дискриптор последнего добавленного маркера так, как при добавлении маркеров нажатием на карте параллельно в мемо пишется подпись маркера. так вот. при нажатии в мемо маркер 1 маркер 2 маркер 3. далее при нажатии на маркер 2 в мемо все равно пишется маркер 3
  17. Эксперемент №3 при выполнении кода try TThread.Synchronize(nil, procedure begin Form4.Show; end); finally ShowMessage('ошибка формы'); end; и нажатии на маркер выдается ошибка Access violation at address 62F1C8EA, accessing address 000000B1 и тут же выдается окно 'ошибка формы'
  18. Странное дело.... на работе работаю с кодом, тестю на телефоне прогу, Гугл-карты загружаются. на флеху все копирую. Дома запускаю...карта серым отображается и все. ни чего не видно на ней. на работе Delphi XE8 Дома Delphi 10 Seattle Может быть это связанно с тем что в этом проекте использую API key для отображения карты из другого своего проекта?
  19. На работе 2010. дома 2007. дома тоже работает 19.11.15 20:42:16 - Исходные файлы: Выбран файл: C:\Users\Downloads\EXECompareXMLandXLS\Ostatki.xlsx 19.11.15 20:42:18 - XLS файл: Обработка началась... 19.11.15 20:42:19 - XLS файл: Обработка завершен
  20. Win 7, 64 бит, Офис 2010. 19.11.15 19:00:21 - Исходные файлы: Выбран файл: C:\Users\Downloads\EXECompareXMLandXLS\Ostatki.xlsx 19.11.15 19:00:23 - XLS файл: Обработка началась... 19.11.15 19:00:24 - XLS файл: Обработка завершена.
  21. подключил System.Threading в uses. все равно Synchronize подчеркнуто и ошибка E2003 Undecleared identifier: 'Synchronize'
  22. у меня не на столько большие познания. Просто вставил данный текст. Synhronize подчеркнуто красным. надо какой то модуль подключать?
  23. не помогло.... написал procedure TForm3.MapView1MarkerClick(Marker: TMapMarker); begin try Form5.Show; finally ShowMessage('ошибка формы'); end; end; Приложение просто "вылетело" ни чего не написал Alt+F11 Указал использовать Unit5 Видимо для MarkerClick первое событие идет это вывод его подписи и моя обработка вырубает приложение. а для двойного клика по маркеру срабатывает событие масштабирование карты. В общем задумка такая чтобы при нажатии на маркер открывалась форма и на ней была инфа о маркере. точнее о том описание того места на которое указывает маркер Эксперемент №2 при таком коде try ShowMessage('Привет'); finally ShowMessage('ошибка формы'); end; сначала выдается надпись маркера тут же появляется сообщение "ошибка формы" нажимаю ОК и появляется сообщение 'Привет'
  24. на форме 3 находится таб контрол. на первой вкладке Мап-Вивер и все. на второй вкладке едит, лэйбл, несколько кнопок. если я буду использовать Form3.Close то все приложение закроется так как Form3 главная форма. и еще... я так понял что у маркера есть событие по умолчанию: если на него нажимаешь то вылазит его описание. но так же у Мап-Вивера есть событие MarkerClick. если я напишу обработчик этого события они же будут перекликаться? или они выполняются последовательно?
  25. у меня 64 битная. кидай исходники и файл. проверю.
×
×
  • Создать...