سؤال

وAaaarg ... حسنا، دعونا تهدئة نفسي.

هل شخص ما لدينا أي مشكلة مع وضع المنطقة من MKMapView؟ أنه لم يعمل معي.

وهذا الرمز:

-(void)setUserCenteredSpan:(MKCoordinateSpan)span{ // for this example, span = {0.5, 0.5}
    // Current region (just initialised)
NSLog(@"%f, %f - %f, %f",   self.region.center.latitude,
                            self.region.center.longitude, 
                            self.region.span.latitudeDelta, 
                            self.region.span.longitudeDelta);
    // New Region
MKCoordinateRegion region = MKCoordinateRegionMake([[[self userLocation] location] coordinate],
                                                   span);
NSLog(@"%f, %f - %f, %f",   region.center.latitude,
                            region.center.longitude, 
                            region.span.latitudeDelta, 
                            region.span.longitudeDelta);
    // Region saved in MKMapView
[self setRegion:region animated:NO];
NSLog(@"%f, %f - %f, %f",   self.region.center.latitude,
                            self.region.center.longitude, 
                            self.region.span.latitudeDelta, 
                            self.region.span.longitudeDelta);
}

والعائدات التي سجل:

30.145127, -40.078125 - 0.000000, 0.000000
0.000000, 0.000000 - 0.500000, 0.500000
0.000000, 0.000000 - 0.000000, 0.000000

هل تعرف لماذا ؟؟!

وشكرا جزيلا، يمكنك حفظ لي من قتل نفسي X (

ومارت

وتحرير: وبطبيعة الحال، وأنا على الجهاز، توصيل الانترنت

.
هل كانت مفيدة؟

المحلول

وأنا لا أفهم بالضبط السجلات السابقة، ولكن أنا أعرف أين كان خطأي.

ولم initialised وMKMapView instancied مع الإطار، ولكن مع autoresizingMask المقرر أن> 0.

وعندما تم استدعاء الأسلوب setRegion، لم مؤطرة وجهة نظري حتى الان. وأعتقد أن تحسب القيم المنطقة وفقا لإطار الرأي، لذلك لا يمكن العثور على هذه القيم.

ومجرد مجموعة الإطار قبل القيام setRegion، وسيكون عرضه بشكل طبيعي.

وداعا!

نصائح أخرى

وأول سجل لديك يستخدم self.region.center.latitude، لكنني لا أرى ذلك في أي مكان في دعوتكم إلى MKCoordinateRegionMake. سجل أقول لك أن كل ما كنت تستخدم لجعل المنطقة لضبط، لديها خطوط الطول / العرض من 0/0 ...

ووضع قناع AutoResizing ساعدني.

[_mapView setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight];   
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top