Trong ứng dụng ios swift
của tôi, tôi có UITableViewController
với các ô được thêm động. Mỗi ô được nhúng MKMapView
và tôi đặt trung tâm của bản đồ cho mỗi ô trên các tọa độ khác nhau. Tôi làm như vậy bằng cách gọi phương pháp này:Trong mỗi ô trong UITableViewController tôi đã nhúng bản đồ. Có cách nào thay đổi nó thành ảnh chụp màn hình bản đồ thay thế không?
func centerMapOnLocation(location: CLLocation, map: MKMapView, radius: CLLocationDistance) {
let coordinateRegion = MKCoordinateRegionMakeWithDistance(location.coordinate,
radius * 2.0, radius * 2.0)
map.setRegion(coordinateRegion, animated: true)
}
bên cellForRowAtIndexPath
:
override func tableView(tview: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tview.dequeueReusableCellWithIdentifier("cell") as! SingleCall
let user:SingleUser = self.items[indexPath.row] as! SingleUser
let regionRadius: CLLocationDistance = 150
let initialLocation = CLLocation(latitude: user.coordinate.latitude, longitude: user.coordinate.longitude)
centerMapOnLocation(initialLocation, map: cell.eventMap, radius: regionRadius)
cell.eventMap.zoomEnabled = false
cell.eventMap.scrollEnabled = false
cell.eventMap.userInteractionEnabled = false
}
Điều này là tốt và nó hoạt động, nhưng tôi tưởng tượng với rất nhiều hồ sơ sẽ có vấn đề với bộ nhớ - ngay cả bây giờ chỉ với vài ô khi người dùng cuộn bảng - mỗi bản đồ tải ngay lập tức và tôi chỉ có thể hình dung được sức mạnh tính toán cần thiết để làm như vậy.
Vì vậy, câu hỏi của tôi là - có cách nào để thay đổi chế độ xem bản đồ động thành một số loại có thể ảnh chụp màn hình về vị trí thực tế của bản đồ không? Nó sẽ hoạt động nhanh hơn khi nói đến rất nhiều tế bào?