In meiner App habe ich einige Animationen. Zum Beispiel habe ich eine Schaltfläche in meinem Hauptmenü und wenn Sie darauf klicken, beginnt die Animation (wie das Verschieben eines Ortes usw.) und am Ende der Animation wird zu einer anderen Seite navigiert. Was ich brauche, ist die Benutzerinteraktion während der Animation zu deaktivieren. Denn während der Animation Wenn ich den Startpunkt meiner Schaltfläche drücke, wird die Seite, die navigiert werden soll, zweimal geöffnet. Um es zusammenzufassen: Wenn ich während der Animation keine Art von Benutzerinteraktion lasse, wird mein Problem gelöst. Wie kann ich das tun?
Einfach, Sie können setUserInteractionEnabled
auf NO
setzen, bevor die Animation startet, und im Beendigungshandler für Animationen den Wert auf YES
setzen.
Sie müssen nicht mit dem Completion Block hacken - es gibt eine Animationsoption, die genau das tut:
%Vor% Wenn Sie UIViewAnimationOptionAllowUserInteraction
festgelegt hätten, wäre die Benutzerinteraktion erlaubt gewesen.
Um Touch-Ereignisse in einer Ansicht zu deaktivieren,
%Vor%So aktivieren Sie das Berührungsereignis in einer Ansicht
%Vor%Ich hatte View-Controller mit Symbolen, die Seiten öffnen. Wenn der Benutzer schnell icon1 und icon2 tippte, wurden die 2 Seiten geöffnet.
um zu verhindern, dass ich diese 2 Zeilen bis zum Anfang des Tap-Events hatte Dies stellt sicher, dass das, was auch immer passiert, das EndeIgnoring ruft
%Vor%Tags und Links objective-c iphone ios animation user-interaction