JMapView控件不会出现在Android中的FireMonkey表单上.
请看下面我的代码,可能是我错过了什么.
NativeLayout: JNativeLayout;并被Maps: JMapView;声明为表单的私有字段.
procedure TForm3.FormShow(Sender: TObject);
var
MapOptions: JGoogleMapOptions;
Camera: JCameraPosition;
LatLng: JLatLng;
begin
CallInUIThreadAndWaitFinishing(
procedure
begin
LatLng := TJLatLng.JavaClass.init(0, 0);
Camera := TJCameraPosition.JavaClass.init(LatLng, 3, 0, 0);
MapOptions := TJGoogleMapOptions.JavaClass.init;
MapOptions.camera(Camera);
MapOptions.mapType(TJGoogleMap.JavaClass.MAP_TYPE_NORMAL);
MapOptions.compassEnabled(False);
MapOptions.rotateGesturesEnabled(False);
MapOptions.tiltGesturesEnabled(False);
Maps := TJMapView.JavaClass.init(SharedActivity, MapOptions);
NativeLayout := TJNativeLayout.JavaClass.init(SharedActivity,
MainActivity.getTextEditorProxy.getWindowToken);
NativeLayout.setControl(Maps);
NativeLayout.SetPosition(10, 10);
NativeLayout.SetSize(600, 600);
NativeLayout.SetFocus(true);
end);
end;
Run Code Online (Sandbox Code Playgroud)
执行此代码后,我看到一个空的FireMonkey表单.
我已经解决了这个问题.
为了使JMapView控件出现在表单上,我必须在创建JMapView实例后立即执行以下代码:
FJMapView.onCreate(TJBundle.JavaClass.init);
FJMapView.onResume;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
307 次 |
| 最近记录: |