ios swift
uygulamasında, dinamik olarak eklenen hücrelerle UITableViewController
var. Her bir hücrenin gömülü olduğu MKMapView
vardır ve her hücre için haritanın ortasını farklı koordinatlarda ayarlıyorum.UITableViewController'daki her hücrede katıştırılmış bir harita var. Bunun yerine haritanın ekran görüntülerine değiştirmenin bir yolu var mı?
func centerMapOnLocation(location: CLLocation, map: MKMapView, radius: CLLocationDistance) {
let coordinateRegion = MKCoordinateRegionMakeWithDistance(location.coordinate,
radius * 2.0, radius * 2.0)
map.setRegion(coordinateRegion, animated: true)
}
cellForRowAtIndexPath
iç: Bu yöntem çağırarak bunu yapıyorum
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
}
Bu gayet iyi ve çalışır, ancak ben bellek ile problem olacak kayıtların sürü hayal - şimdi bile kullanıcı tabloyu kaydırdığında sadece çift hücrelerle birlikte - her harita anında yüklenir ve bunu yapmanın ne kadar güç olduğunu tahmin edebilirim.
Benim sorum şu: dinamik harita görüntüsünü, haritanın gerçek konumunun bir tür ekran görüntüsüne dönüştürmenin bir yolu var mı? Çok sayıda hücreye geldiğinde daha hızlı çalışacak mı?