Ziemlich häufige Frage, auf die ich ein paar Antworten habe und ich bin fast da. Ich habe eine Taste, die, wenn sie gedrückt wird, ein Bild (Code wie folgt) erstellt
(numImages wird beim Laden auf ZERO gesetzt und dient als Aufwärtszählung für die Tag-Nummern aller erstellten Bilder)
%Vor%Ich habe dann eine touchBegan-Methode, die erkennt, was berührt wurde. Was ich tun muss, ist, dass der Benutzer das neu erstellte Bild ziehen kann. Es funktioniert fast, aber das Bild flackert überall, wenn Sie es ziehen. Ich kann auf das Bild, auf das Sie klicken, zugreifen, da ich es TAG bekommen kann, aber ich kann es einfach nicht schön ziehen.
%Vor%Es funktioniert, indem ich eine Ausgabe des Tags für jedes Bild erhalte, während ich auf sie klicke. Aber wenn ich ziehe, blinkt es ... irgendwelche Ideen?
Als Antwort auf meine Frage habe ich beschlossen, eine Klasse für die Bearbeitung der Bilder zu erstellen, die ich in der Ansicht platziere.
Code, wenn jemand interessiert ist ....
Draggable.h
%Vor%Draggable.m
%Vor%und um es anzurufen
%Vor% Normalerweise erhalten Sie eine implizite Animation, wenn Sie center
ändern. Verarschst du dich mit -contentMode
oder mit -setNeedsDisplay
?
Sie können explizit eine Animation anfordern, um das Löschen zu vermeiden und auf diese Weise neu zu zeichnen:
%Vor% Beachten Sie, dass Übrigens, Sie verlieren NSLog()
sehr langsam sein kann (viel langsamer als erwartet; es ist viel komplizierter als ein einfaches printf
), und das kann Probleme verursachen, die so oft wie touchesMoved:withEvent:
. tmpImage
.
Tags und Links iphone touch uiimageview