Tôi muốn tích hợp Radar thời tiết trên MapView của mình.Xin vui lòng bất kỳ ai giúp đỡ về việc thực hiện tác vụ này.Tôi đã thực hiện rất nhiều googling nhưng không thành công.Vui lòng kiểm tra hình ảnh này tôi muốn làm như thế này. Làm cách nào tôi có thể tích hợp Lớp phủ Radar trên MapView?
Trả lời
Tôi đã làm một cái gì đó như thế này để đạt được nhiệm vụ này:
trong file header (.h)
@interface RDViewController : UIViewController{
UIImage *image ;
}
@property (strong, nonatomic) IBOutlet MKMapView *mapView;
@property (strong, nonatomic) IBOutlet UIActivityIndicatorView *activityIndicator;
@property (strong, nonatomic) IBOutlet UIImageView *imageView;
trong file .m
@implementation RDViewController
@synthesize mapView;
@synthesize activityIndicator;
@synthesize imageView;
- (void)viewDidLoad
{
NSURL *url = [NSURL URLWithString:
@"http://radar.weather.gov/ridge/Conus/RadarImg/latest_radaronly.gif"];
MapOverlay * mapOverlay = [[MapOverlay alloc] initWithImageData:[NSData dataWithContentsOfURL:url] withLowerLeftCoordinate:CLLocationCoordinate2DMake(21.652538062803, -127.620375523875420) withUpperRightCoordinate:CLLocationCoordinate2DMake(50.406626367301044, -66.517937876818)];
//<LatLonBox><north>50.406626367301044</north><south>21.652538062803</south><east>-66.517937876818</east><west>-127.620375523875420</west></LatLonBox>
[mapView addOverlay:mapOverlay];
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)viewDidUnload
{
[self setImageView:nil];
[self setMapView:nil];
[self setActivityIndicator:nil];
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return YES;
}
#pragma Mark - MKOverlayDelgateMethods
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay {
MapOverlay *mapOverlay = overlay;
MapOverlayView *mapOverlayView = [[MapOverlayView alloc] initWithOverlay:mapOverlay];
return mapOverlayView;
}
Bạn cần điều tra lớp phủ MapKit (MKOverlay). Trong trường hợp của bạn, bạn sẽ tạo một MKPolygon
.
Bạn sẽ cần phải tạo một mảng các MKMapPoints từ dữ liệu radar thời tiết của mình, sau đó tạo một MKPolygon từ các điểm này và thêm nó làm bản đồ của bạn dưới dạng lớp phủ.
Có một dự án mẫu của Apple có tên là HazardMap làm điều gì đó rất giống với những gì bạn đang cố gắng làm, ngoại trừ trong trường hợp này nó đang sử dụng dữ liệu động đất.
Ngoài ra, hãy xem bản trình bày WWWDC 2011 "Hiển thị thông tin địa lý với MapKit". Khoảng mốc 30 phút, họ bắt đầu nói về Lớp phủ.
Hy vọng điều này sẽ hữu ích.
có Tôi đã kiểm tra HazardMap nhưng nó không cung cấp thông tin thời tiết và nó lấy một số tập tin đó là một số điều khác nhau mà MyRequirement.Thanks cho phản ứng nhưng không có bất kỳ api cho this.Thanks một lần nữa. –
Tôi giả định rằng bạn có quyền truy cập vào dữ liệu thời tiết nguồn. Bạn có thể thử http://www.programmableweb.com để tìm nguồn dữ liệu bạn yêu cầu. –
- 1. MapView hiển thị chi tiết lớp phủ khi nhấp
- 2. thêm Lớp phủ vào một MapView trong osmdroid
- 3. Hành vi vẽ Lớp phủ Weird khi phóng to trong MapView
- 4. Tại sao bóng của Lớp phủ MapView của tôi ở sai địa điểm?
- 5. Android làm thế nào để vẽ sơn trong tay miễn phí trong MapView bằng cách sử dụng lớp phủ?
- 6. Android; MapView, làm cách nào tôi có thể đặt vị trí mặc định?
- 7. Cách hiển thị lớp phủ trên AVCaptureVideoPreviewLayer
- 8. Làm thế nào để phát hiện vòi trên MKPolylines/Lớp phủ như Maps.app?
- 9. Python: Làm cách nào tôi có thể kế thừa từ loại danh sách được tích hợp?
- 10. Làm cách nào tôi có thể tích hợp kiểm tra chính tả với redactor?
- 11. Lớp phủ NSView trên NSScrollView
- 12. Làm cách nào để tôi có thể tích hợp tính năng tự động hoàn thành Codeigniter trên Sublime Text 2?
- 13. Làm thế nào tôi có thể tích hợp Oracle BI vào một ứng dụng hiện có?
- 14. Tôi làm cách nào để theo dõi báo cáo lỗi trong Radar của Apple?
- 15. Làm cách nào để tích hợp InAppSettingsKit?
- 16. Cách tốt nhất để có một lớp phủ hình ảnh thu phóng và xoay trên Android?
- 17. Di chuyển các biểu tượng trên Android MapView
- 18. Ứng dụng thời tiết với lớp phủ làm mới
- 19. Các nút trên Mapview
- 20. Java: Làm cách nào để vẽ lớp phủ không cuộn trên Khung nhìn ScrollPane?
- 21. làm thế nào để có được giá trị dài & lat của bốn góc trong mapview trong android?
- 22. Làm cách nào để hiển thị lớp phủ chỉ báo tiến trình/HUD trên iPhone?
- 23. Làm thế nào tôi có thể Tích hợp PayPal với ASP.NET?
- 24. Làm cách nào để tôi có thể phù hợp với RelativeLayout trên màn hình?
- 25. Làm cách nào tôi có thể hợp nhất 2 hình ảnh trên Windows Phone
- 26. cách tạo lớp phủ trên hình thu nhỏ của bootstrap?
- 27. Thuộc tính tiêu đề trên các lớp phủ hình tròn
- 28. Xóa lớp phủ "phát trên youtube" trên video được nhúng
- 29. Ghi lớp phủ tùy chỉnh trên iPhone
- 30. Lớp phủ Google Maps
Ở đâu bạn nhận được phương pháp này từ tôi không thể nhìn thấy nó trong tài liệu --- MapOverlay * mapOverlay = [[MapOverlay alloc] initWithImageData: [Dữ liệu NSDataWithContentsOfURL: url] withLowerLeftCoordinate: CLLocationCoordinate2DMake (21.652538062803, -127.620375523875420) withUpperRightCoordinate: CLLocationCoordinate2DMake (50.406626367301044, -66.517937876818)]; –
Bạn phải tạo Lớp tùy chỉnh chứa các phương thức này Vui lòng kiểm tra những hình ảnh của lớp đó. –
@iosRider Bạn có thể xem câu hỏi của tôi liên quan đến gifs động trong mkoverlays http://stackoverflow.com/questions/20558591/animated-gif-in-an-mkmapview-overlay-using-mkoverlayrenderer – wigging