Bla*_*o73 6 android google-maps xamarin google-play-services
旧代码以这种方式完美运行:
LatLng location = new LatLng (myClass.myLocation.Latitude, myClass.myLocation.Longitude);
CameraPosition.Builder builder = CameraPosition.InvokeBuilder ();
builder.Target (location);
builder.Zoom (18);
CameraPosition cameraPosition = builder.Build ();
MapsInitializer.Initialize (this);
CameraUpdate cameraUpdate = CameraUpdateFactory.NewCameraPosition (cameraPosition);
MapFragment googleMap = FragmentManager.FindFragmentById<MapFragment> (Resource.Id.map);
theMap = googleMap.Map;
if (theMap != null) {
theMap.MapType = GoogleMap.MapTypeNormal;
theMap.MoveCamera (cameraUpdate);
}
Run Code Online (Sandbox Code Playgroud)
但是现在它.Map已经过时并且已经过时了,我必须以.GetMapAsync某种方式使用:
theMap = googleMap.GetMapAsync (IOnMapReadyCallback);
Run Code Online (Sandbox Code Playgroud)
但我不明白怎么做.
有人可以帮助我吗?
小智 17
您的地图片段类必须实现OnMapReadyCallback并覆盖onMapReady():
@Override
public void onMapReady(final GoogleMap map) {
this.map = map;
map.setMyLocationEnabled(true);
}
Run Code Online (Sandbox Code Playgroud)
在您的onCreateView用途getMapAsync()中设置片段的回调:
MapFragment mapFragment = (MapFragment) getFragmentManager()
.findFragmentById(R.id.map); mapFragment.getMapAsync(this);
Run Code Online (Sandbox Code Playgroud)
您需要实现Google地图V2所需的一切:https: //developers.google.com/maps/documentation/android/map
| 归档时间: |
|
| 查看次数: |
37967 次 |
| 最近记录: |