0
APP에서 위치 공유를 구현 중이므로 위도와 경도에 따라 여러 스냅 샷을 생성해야합니다. 그래서 간단하게 직접 사용 :주어진 위도와 경도로 스냅 샷을 생성하는 가장 좋은 방법은 MKMapView를 건너 뛰는 것입니다.
- (UIImage*) renderToImage:(MKMapView*) view
{
UIGraphicsBeginImageContextWithOptions(view.frame.size, NO, 0.0);
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
나에게 않은 완성 된 스냅 샷을 이끌 것입니다.
나는 다음 코드를 사용하려 : 나 심지어 내가 완전히로드 알고 스냅 샷을 설정 셀을 마우스 오른쪽 버튼으로 돌아갈 수 있도록- (void)mapViewDidFinishRenderingMap:(MKMapView *)mapView fullyRendered:(BOOL)fullyRendered
{
// Image creation code here
}
그러나, 그것은 어렵다.
이렇게 복잡한 절차없이 위도와 경도에서 직접 스냅 샷을 생성하는 API가 있습니까? 미리 감사드립니다.
MKMapSnapshotter를 알고 있으면 좋겠지 만, 아직 조금 혼란 스럽습니다. 다른 함수에서 [snapshotter startWithCompletionHandler : ^()] 블록 renderSnapshotForLocation : (CLLocationCoordinate2D) 위치, 적절한 시간에 UITableview에서 특정 셀의 이미지를 설정할 수 있습니까? –
그게 달려 있습니다 - 언제 "적절한 때"입니까? 스냅 샷은 꽤 빠르며, 필요할 때 지연된 이미지를 사용하고 지연이 눈에 띄지 않습니다. 서명을'renderSnapshotForlocation : (CLLocationCoordinate2D) inCell : (UITableViewCell *) cell'으로 변경하고 콜백에서'cell'을위한 이미지를 설정할 수 있습니다. 완전히 동기적인 것을 원하는 것처럼 들리지만지도 이미지가 렌더링 될 때까지 UI를 차단하고 싶지는 않습니다. 가능한 한 빨리 스냅 샷을 시작하고 완료 될 때 필요한 위치에 이미지를 놓습니다. – dylansturg
감사합니다. renderSnapshotForlocation : (CLLocationCoordinate2D) 위치 inCell : (UITableViewCell *) cell이 내가 필요한 것입니다. –