gpt4 book ai didi

iphone - MapView 崩溃

转载 作者:行者123 更新时间:2023-11-29 04:42:42 24 4
gpt4 key购买 nike

我正在加载带有一些引脚的MKMapView,这些引脚会根据地址坐标掉落。一切工作正常,直到我将 map View 保持打开一段时间(2 分钟)。然后它就崩溃了,而事件却没有真正发生。这可能是什么原因。

在我的viewDidLoad中我编写了以下代码

 mapView = [[MKMapView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
mapView.delegate=self;

[self.view addSubview:mapView];

addressbook = ABAddressBookCreate();
for (i = 0; i<[groupContentArray count]; i++) {
NSLog(@"group content array %@", groupContentArray);
person = ABAddressBookGetPersonWithRecordID(addressbook,[[groupContentArray objectAtIndex:i] intValue]);
NSLog(@"Person %@", person);
ABMultiValueRef addressProperty = ABRecordCopyValue(person, kABPersonAddressProperty);
NSArray *address = (NSArray *)ABMultiValueCopyArrayOfAllValues(addressProperty);
NSLog(@"Address %@", address);
for (NSDictionary *addressDict in address)
{
addAnnotation = nil;
firstName = (NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty);
lastName = (NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty);

NSString *country = [addressDict objectForKey:@"Country"];
NSString *streetName = [addressDict objectForKey:@"Street"];
NSString *cityName = [addressDict objectForKey:@"City"];
NSString *stateName = [addressDict objectForKey:@"State"];

if (streetName == (id)[NSNull null] || streetName.length == 0 ) streetName = @"";
if (stateName == (id)[NSNull null] || stateName.length == 0 ) stateName = @"";
if (cityName == (id)[NSNull null] || cityName.length == 0 ) cityName = @"";
if (country == (id)[NSNull null] || country.length == 0 ) country = @"";


NSString *fullAddress = [streetName stringByAppendingFormat:@"/%@/%@/%@", cityName, stateName, country];
mapCenter = [self getLocationFromAddressString:fullAddress];
if(stateName != NULL || country != NULL || streetName != NULL || cityName != NULL){

if ((mapCenter.latitude == 0) && (mapCenter.longitude == 0))
{
//Alert View
}
else{

if(addAnnotation == nil){
addAnnotation = [[[MyAddressAnnotation alloc] initWithCoordinate:mapCenter title:firstName SubTitle:lastName Recordid:[groupContentArray objectAtIndex:i] ]autorelease];

[mapView addAnnotation:addAnnotation];}
else{
// ALert View

}
}
}
}
CFRelease(addressProperty);

}
[self zoomToFitMapAnnotations:mapView];


[self.navigationItem setHidesBackButton:YES animated:YES];
NSString *mapTitle = localizedString(@"MAP_TITLE");
[self setTitle:mapTitle];
[segmentedControl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];

最佳答案

试试这个:- (void)viewDidLoad { [ super viewDidLoad];

UIImageView *topBar = [[UIImageView alloc] initWithImage:[UIImage    imageNamed:@"header1.png"]];
topBar.frame = CGRectMake(0, 0, 320, 44);
[self.navigationController.navigationBar insertSubview:topBar atIndex:0];
[topBar release];

self.navigationController.navigationBarHidden=YES;

[mapView setMapType:MKMapTypeStandard];
[mapView setZoomEnabled:YES];
[mapView setScrollEnabled:YES];
[mapView setShowsUserLocation:YES];
MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } };
region.center.latitude = [strLat doubleValue];
region.center.longitude = [strLong doubleValue];
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[mapView setRegion:region animated:YES];

[mapView setDelegate:self];

mapAnonotationView *ann = [[mapAnonotationView alloc] init];
ann.title = name;
ann.subtitle = Address;
ann.coordinate = region.center;
[mapView addAnnotation:ann];
[ann release];
ann = nil;

}

关于iphone - MapView 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10135253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com