Wie aktualisiere ich meine custom UIView mit drawRect?

Ich versuche zu bauen, die einige iOS-apps, die beim lernen und bin mit einigen Schwierigkeiten zu verstehen, den richtigen Weg, dies zu tun.

Was ich derzeit habe ist eine Ansicht, die eine Unterklasse von UIView. Es ist klar und ich will es als Zeichnung Oberfläche. Es wird sich auf etwas anderes, wie Transparentpapier.

Sollte der Benutzer in der Lage sein, um klicken Sie auf eine Stelle, dann eine andere Stelle und eine Linie ziehen müssen zwischen den 2 Punkten. Ich bin immer der touch-Daten habe ich die Punkte, und ich bin in der Lage zu ziehen Zeug von der Innenseite der drawRect: zunächst.

Das problem ist, ich bin mir nicht sicher, wie Sie das update etwas später. Wenn alles geladen und drawRect: calle, es wird eine Linie zeichnen, einfach nur gut. Aber wie mache ich es zeichnen sich neue Sachen, oder alter Kram, der ist schon gezeichnet, basierend auf was der Benutzer tut. Ich weiß, ich brauche zu nennen setNeedsDisplay, aber nicht, wie man die Daten in die view zu zeichnen Zeug.

Ich habe gelesen, ein paar tutorials/Beispiele, und Sie alle aufhören zu "Überschreiben drawRect:, und zeichnen Sie einige Dinge... getan!". Wie übertrage ich die Daten unten in der Ansicht es sagen, "hey, das Neuzeichnen dieses Zeug, und fügen Sie diese neue Zeile".

Oder werde ich über das alles der falsche Weg ist?

EDIT:
Ich werde versuchen zu erklären, besser ist das setup, das ich habe.

Ich habe einen VC. In diesem VC ' s Ansicht, ich habe eine Symbolleiste am unteren Rand. Der rest der Fläche wird von 2 Ansichten. Die eine ist eine Ansicht, die einen Verweis Bild. Die eine ist die benutzerdefinierte Ansicht, dass ist klar (tracing paper) , sitzt an der Spitze. Klicken Sie auf eine Schaltfläche auf der Symbolleiste, die sich auf einem gesturerecognizer. Sie klicken auf dem Bildschirm, und ich sammle die tap-Daten, schalten Sie die gesturerecognizer und HOFFENTLICH ziehen Sie eine Linie. Ich habe Sie alle arbeiten mit Ausnahme der Zeichnung Teil.

Sie sagte, Sie "haben die Punkte". Wie sind Sie mit der Speicherung?
CGPoints mit den Koordinaten-Positionen der start-und stop für jede "Zeile". Jetzt sind Sie gehalten, die von der VC.

InformationsquelleAutor Nathan Hess | 2011-05-31

Schreibe einen Kommentar