C# Xamarin.ios中的MKMap:始终显示非洲的相同位置
我用的是MKMap。我希望地图最初显示用户的位置。但无论我对区域代码做了什么更改,地图都会以相同的缩放级别显示相同的位置 这是我的密码C# Xamarin.ios中的MKMap:始终显示非洲的相同位置,c#,ios,xamarin,mkmapview,mapkit,C#,Ios,Xamarin,Mkmapview,Mapkit,我用的是MKMap。我希望地图最初显示用户的位置。但无论我对区域代码做了什么更改,地图都会以相同的缩放级别显示相同的位置 这是我的密码 public override void ViewDidLoad () { base.ViewDidLoad (); map.MapType = MapKit.MKMapType.Standard; map.ShowsUserLocation = true; var mapCenter = map.UserLocation.Co
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编程。因此,如果您在答复时不考虑讨论高级问题,我将非常感激。p>
我正在使用Xamarin和c而不是xcode,并在虚拟设备iPhone4SiOS8.1上进行测试
非常感谢。这在模拟器上很常见,因为xcode 6已经在设备上测试过了吗?没有,我还没有物理设备。我不确定语言的差异,但需要注意的是,苹果改变了一些事情,要求应用程序用户允许位置设置在iOS8中工作,这意味着您需要实现UIAlertView。遗憾的是,它在运行时不会显示为错误,也不会显示位置。我不知道如何在C中实现,但值得尝试找到解决方案。