2016-10-27 5 views
4

Mit Blick auf die generierten Absturzberichte, konnte ich sehen, dass dieser Fehler viel erscheint. Aber es ist wirklich schwer zu sagen, was es zum Scheitern verurteilt verursacht:Debugging Firebase Crash Report - CALayer Position enthält NAN

Exception name: CALayer position contains NaN: 

In meinem Code, ich habe eine NSTimer, die eine benutzerdefinierte MKAnnotation entfernt, die CALayers nach X Verzögerung animiert enthält. Ich vermute, dass ich view.layer removeAllAnimations vor dem Anruf removeFromSuperView anrufen muss.

Derzeit rufe ich nur removeFromSuperView.

Stapel log:

Exception name: CALayer position contains NaN: [nan 163.74] 
__exceptionPreprocess + 1241536 
objc_exception_throw + 34136 
+[NSException raise:format:] + 1241348 
CA::Layer::set_position(CA::Vec2<double> const&, bool) + 11
-[CALayer setPosition:] + 1101608 
-[CALayer setFrame:] + 1103040 
-[UIView(Geometry) setFrame:] + 39996 
Mapbox (4306594984 + 60584) 
Mapbox (4306593356 + 58956) 
Mapbox (4306685072 + 150672) 
Mapbox (4306682568 + 148168) 
__NSFireDelayedPerform + 998556 

Jede Eingabe wäre sehr dankbar!

Antwort

2

Bitte überprüfen Sie, ob Sie die Animationen in der Ansicht verwenden, die mit Ihnen Einschränkungen angewendet haben könnte. In diesem Fall kann ein Schnappschuss einer Ansicht erstellt und Animationen auf diese Ansicht angewendet werden. Nach Abschluss entfernen Sie die Schnappschussansicht.

[viewObject snapshotViewAfterScreenUpdates:YES]; 
+0

Hmm .. Wie sind Sie sicher, dass dies das Problem verursacht? –

+0

Hallo Freund, ich möchte nur die Anwendung der Animationstechnik für Einschränkungen teilen. Das Problem ist möglicherweise nicht auf diesen Grund zurückzuführen. :) – KGen

Verwandte Themen