0
コンテキスト: 多くの異なるセルを含むTableViewを作成しています。その中に複数の注釈を含むMapViewを含める必要があります。iOS 9:UITableViewCell内の複数の注釈を含むMapView
私がこれまで持っているもの:
//address comes in this format: NSString = @"myStreet myNumber, myZIP myCity, Germany";
- (void) mapPinForAddress: (NSString *)address {
CLGeocoder *geoCoder = [[CLGeocoder alloc] init];
[geoCoder geocodeAddressString:adresse completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
if (placemarks && placemarks.count > 0) {
CLPlacemark *topResult = [placemarks objectAtIndex:0];
MKPlacemark *placeMark = [[MKPlacemark alloc] initWithPlacemark:topResult];
MKPointAnnotation *adressPoint = [[MKPointAnnotation alloc] init];
adressPoint.coordinate = placeMark.coordinate;
adressPoint.title [email protected]"Title";
adressPoint.subtitle = address;
[mapPins addObject:adressPoint];
}
}];
とcellForRowAtIndexPath
の内部
は、私が最初のためTableViewController
をロード:ここ
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == mapViewSection) {
myMapCell *cell = [tableView dequeue...];
[cell.mapView addAnnotations:mapPins];
[cell.mapView showAnnotations:mapPins animated:YES];
return cell;
}
とは私の問題です時間...それは魅力のように機能します...しかし、私は前のビューに戻って、TableViewController
tは動作しません。 私はすべてをNSLogにしようとしましたが、出力は同じですので、毎回mapPinForAddress
が呼び出されます。
誰かにヒントやコードがありますか?
あまりにも多く呼び出された場合、 'geocodeAddressString'は失敗する可能性があります。 – Brandon