'initWithPolygon:' & 'initWithPolyline:' устарели: сначала устарели в iOS 7.0: есть ли решение для этого предупреждения в iOS?
Я использую библиотеку KMLParser для автономной карты, чтобы загрузить файл.kml с сервера, но я нашел эти предупреждения.
Пожалуйста, дайте какое-либо решение, чтобы удалить эти предупреждения.
Вот функция для обоих:
для initWithPolygon,
- (MKOverlayPathView *)createOverlayView:(MKShape *)shape
{
// KMLPolygon corresponds to MKPolygonView
MKPolygonView *polyView = [[MKPolygonView alloc] initWithPolygon:(MKPolygon *)shape];
return polyView ;
}
для initWithPolyline,
- (MKOverlayPathView *)createOverlayView:(MKShape *)shape
{
// KMLLineString corresponds to MKPolylineView
MKPolylineView *lineView = [[MKPolylineView alloc] initWithPolyline:(MKPolyline *)shape];
return lineView ;
}
1 ответ
Вы должны использовать (MKOverlayRenderer *)
введите делегат вместо (MKOverlayView *)
введите делегат. И вернуться MKPolylineRenderer
вместо MKPolylineView
,
- (MKOverlayRenderer *)mapView:(MKMapView *)mapView
rendererForOverlay:(id<MKOverlay>)overlay {
MKPolylineRenderer *renderer = [[MKPolylineRenderer alloc] initWithOverlay:overlay];
renderer.strokeColor = [UIColor blueColor];
renderer.lineWidth = 2.0;
return renderer;
}