我正在使用MKMap。我希望地图最初显示用户位置。但无论我在区域代码中做了什么更改,地图都会以相同的缩放级别显示相同的位置。
这是我的代码。
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
map.MapType = MapKit.MKMapType.Standard;
map.ShowsUserLocation = true;
var mapCenter = map.UserLocation.Coordinate;
var mapRegion = MKCoordinateRegion.FromDistance (mapCenter, 200, 200);
map.CenterCoordinate = mapCenter;
map.Region = mapRegion;
map.DidUpdateUserLocation += (sender, e) => {
if (map.UserLocation != null){
mapCenter = map.UserLocation.Coordinate;
mapRegion = MKCoordinateRegion.FromDistance (mapCenter, 100, 100);
map.CenterCoordinate = mapCenter;
map.Region = mapRegion;
}
};
//add annotation
map.AddAnnotation (new MKPointAnnotation () {Title = "My Annotation", Coordinate = new CLLocationCoordinate2D (map.UserLocation.Coordinate.Latitude,map.UserLocation.Coordinate.Longitude)});
//set map
// Perform any additional setup after loading the view, typically from a nib.
}
这是我第一次使用Xamarin并为ios编程。如果您在回复时考虑不讨论高级问题,我感谢您。
我正在使用Xamarin和c#(不是xcode)并在虚拟设备iphone 4s ios 8.1上进行测试。
之前非常感谢。