iOS-Animationen aufhören zu arbeiten in meinem app in iOS7
Bin ich zu sehen, dass alle ios-Animationen in meine app aufhören zu arbeiten.Seine geschehen sehr Häufig in iOS7.
Hey Leute, ich hatte eine app, die unterstützt iOS 5, 6 und 7.Ich Bemerke seit kurzem, dass alle iOS-Animationen nicht mehr funktionieren in der app in iOS7??
- Ich weiß nicht den Grund dahinter, aber ich hatte genau das gleiche Problem und es wurde gelöst, als ich entfernt eine tableView:willDisplayCell:forRowAtIndexPath: Methode, die verwendet werden, um rufen viele performSelectorInBackground, um die Bilder anzuzeigen. Dies kann helfen, oder geben vielleicht einen Hinweis um das problem zu lösen.
- Ich fand tatsächlich heraus.Es passiert, wenn Sie tun UIKit Kram im hintergrund-thread.Hier ist der link der alles erklärt. stackoverflow.com/questions/18281097/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
In IOS 7, wenn einige main-Methode Aktion auf hintergrund-thread, dann die Animationen deaktiviert.
also, für dieses, müssen Sie erneut aktivieren die Animationen wie (Einen workaround)
Kann sein, dass das helfen kann.
Ich habe dieses problem in letzter Zeit mit einigen Ansichten, die ich am Layout für die Größe von Berechnungen auf der hintergrund-thread. Durch swizzling
setAnimationsEnabled:
ich fand, dass die nur Zeit war ich das deaktivieren der Animationen aus dem hintergrund-thread wurde in-[UIImageView setImage:]
.Weil diese Ansicht wurde nie erbracht-und image-Veränderungen waren nicht erforderlich für meine Berechnung, ich war in der Lage zu umschließen, dieser test im Haupt-thread-Aufruf:
Ist es erwähnenswert, ich glaube nicht, trifft dieses Problem in der anfänglichen Ansicht Instanziierung, weil ich schon laden meine Vorlage Ansichten im Haupt-thread zu vermeiden, eine Xib-laden-Problem.
Andere Probleme können komplexer sein, aber Sie sollten in der Lage zu kommen mit ähnlichen workarounds. Hier ist die Kategorie, die ich verwenden, um zu erkennen, hintergrund deaktivieren von Animationen.
Update
Es stellt sich heraus, dass
UIWebView
macht eigentlich unsichere AufrufesetAnimationsEnabled:
beim anzeigen eines media-Elements (rdar://20314684). Dies macht die oben genannte Methode sehr schmerzhaft, um die ganze Zeit aktiv, wenn die app erlaubt es, beliebige web-Inhalte. Stattdessen habe ich angefangen mit der folgenden Verfahren, wie es lässt mich schalten Sie den Haltepunkt ein-und ausschalten und weiter nach Ausfall:Mit diesem code können Sie aufhören, Ihre app, indem Sie hinzufügen einer symbolischen Haltepunkt auf
SEViewAlertForUnsafeBackgroundCalls
oder einfach nur kleben Sie einen Haltepunkt in der Funktion Körper.Gist
Erweitern Vinay Lösung, das ist was ich tun:
Scheint es das problem zu lösen.