Il mio problema è abbastanza semplice, in realtà ...iOS Swift: come sovrapporre due immagini che ingrandire allo stesso tempo senza perdere le coordinate di sovrapposizione dell'immagine
Immaginate un'immagine di sfondo che rappresenta le strade e gli edifici intorno alla vostra casa, si noti che questa è un'immagine appositamente costruita. Questa immagine (una vista) è zoomabile e finora così buona. Simile alla mappa, ma con un'immagine.
Ora immagine che in cima alle strade disegnate sull'immagine ci sono indicatori che rappresentano le auto. Questi si sposteranno nel tempo e quindi si muoveranno dinamicamente. Ho posizionato con successo le auto nel posto giusto sull'immagine, ma quando eseguo lo zoom in/out le auto si spostano fuori luogo. Nota che non voglio che le auto cambino di dimensioni, rimarranno sempre le stesse.
In sostanza, molto simile a un indicatore di mappa sopra le mappe di google, ma invece della mappa ho un'immagine di sfondo e invece dei marcatori ho altre immagini (le auto).
Ora per l'implementazione ... Ho un semplice ScrollableView che contiene una vista immagine. Sto cercando di sovrapporre altre immagini multiple che voglio mantenere il posizionamento ma non lo zoom in avanti o indietro (o almeno non tanto quanto l'immagine principale). Direi che è simile a una mappa che ha perni di posizione su di esso, ma è solo usando le immagini. Sto facendo questo a Swift e l'ultima versione di iOS (9x)
import UIKit
class ViewController: UIViewController, UIScrollViewDelegate
{
@IBOutlet weak var scrollView: UIScrollView!
@IBOutlet weak var imageView: UIImageView!
@IBOutlet weak var pin1View: UIImageView!
@IBOutlet weak var pin2View: UIImageView!
override func viewDidLoad()
{
super.viewDidLoad()
self.scrollView.minimumZoomScale = 1.0;
self.scrollView.maximumZoomScale = 10.0;
}
override func didReceiveMemoryWarning()
{
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView?
{
let pin1_X = self.pin1View.frame.origin.x
let pin2_Y = self.pin2View.frame.origin.y
//I guess I need to do something here but not sure
return self.imageView
}
}
Eventuali suggerimenti molto apprezzato. L'ho cercato su google, ma non sono riuscito a trovare esempi e ancora a imparare le visualizzazioni e gli sviluppatori di dispositivi mobili. Grazie per il vostro aiuto.
Grazie! Ma avendo un piccolo problema con un errore fatale: trovato in modo non casuale mentre si estraeva un valore facoltativo su questa linea: pin1ViewCenter = pin1View.center qualche idea? – user2091936
Assicurati che pin1View sia collegato correttamente nello storyboard, accade quando è nullo. –