MKMAPVIEW DEDUPDATEERLOCATION لا يتم تحديث
-
02-10-2019 - |
سؤال
لدي تطبيق مع خريطة وأريد تكبير الموقع الحالي ، عندما يتم تحديثه.
أنا أستعمل -(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
طريقة تفويض لمعرفة متى تم تحديث موقع المستخدم.
الآن على طريقة المحاكاة يتم استدعاؤها كما ينبغي. ولكن عندما أقوم باختباره على الجهاز (iPhone 2G) ، يتم تحديث الموقع على الخريطة ، ولكن لا يتم استدعاء طريقة "didupdateUserLocation" على الإطلاق ، وهو نفسه بالنسبة لطريقة المندوب "MapViewWillStartLocatingUser".
يسأل النظام إذا سمحت بالحصول على موقعي للتطبيق ويبدأ في إظهار موقعي ، ولكن
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
NSLog(@"didUpdateUserLocation = '%@'", userLocation);
}
لا يسمى أبدا.
المحلول
يذكر المرجع أن طريقة المندوب هذه متاحة منذ iOS 4.0. من المحتمل أن تقوم جهاز محاكاة الخاص بك بتشغيل iOS 4.0 بينما هاتفك - iOS 3.1.
أواجه نفس المشكلة وما زلت أبحث عن حل. ربما سيساعد الوصول إلى طرق CL مباشرة.
نصائح أخرى
جرب هذه map.showsuserLocation = نعم ؛