如何使用 Maps.TMapCircle in Delphi 10 for Android?

How to use Maps.TMapCircle in Delphi 10 for Android?

我想为 Android 应用程序添加一些 TmapCircle 到我的 TMapView。添加 Marker 效果很好。只有 Circles 不工作。 这是我的代码:

uses
system.SysUtils, System.Types, System.UITypes, System.Classes,
System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, 
FMX.TabControl, FMX.StdCtrls, FMX.Controls.Presentation,
FMX.Gestures, System.Actions, FMX.ActnList, FMX.Maps, System.Sensors,
System.Sensors.Components, IdBaseComponent, IdIntercept,System.IOUtils,
IdBlockCipherIntercept, Data.FMTBcd, Data.DB, Data.SqlExpr,   
Data.DbxSqlite, System.Generics.Collections;
...
..
.
private
{ Private declarations }
FMarkers : TList<TMapMarker>;
FCircles : TList<TMapCircle>;
...
..
.
implementation
var
MyMarker : TMapMarkerDescriptor;
MyCircle : TMapCircleDescriptor;
...
..
.

procedure TTabbedwithNavigationForm.Button1Click(Sender: TObject);
var
Position: TMapCoordinate;
begin

position.Latitude := mapview1.Location.Latitude;
position.Longitude := mapview1.Location.Longitude;

MyMarker := TMapMarkerDescriptor.Create(Position, 'MyMarker');
MyMarker.Draggable := True;
MyMarker.Visible :=True;
Fmarkers.Add(MapView1.AddMarker(MyMarker));


MyCircle := TMapCircleDescriptor.Create(Position, 190);
Mycircle.StrokeWidth := 3;
FCircles.Add(MapView1.AddCircle(MyCircle));
end; 

Fmarkers 工作正常。但是 Fcircles 给我一个错误:

Segmentation Fault 11

在这一行中:

FCircles.Add(MapView1.AddCircle(MyCircle));

我不明白为什么。

我正在使用 Rad Studio 10。

您省略了源代码的相关部分。请post一个完整例子。

但是,我认为您的初始化代码(您省略了)有问题。您很可能忘记创建 FCircles。因此,发生访问冲突,由错误消息“Segmentation Fault 11”指示。