Karte von MapFragment wird beim Zurückkehren von einer anderen Aktivität mit Verzögerung geladen

9

Soweit ich das sehen kann, hat MapFragment ein Problem mit Übergangsanimationen. Alle Ansichten auf dem Layout werden sofort angezeigt, einschließlich der eigenen Ansichten von MapFragment (wie Zoom-Schaltflächen). Aber die Karte selbst wird nur mit Verzögerung geladen, nachdem die Animation abgeschlossen ist.

Um das Problem zu veranschaulichen, habe ich Folgendes getan:

  1. Ich habe eine der Aktivitäten in den Google Maps android API-Beispielen geringfügig geändert. Es öffnet eine leere Aktivität über ein Aktionselement. Wenn ich auf die Zurück-Schaltfläche klicke, wird die Karte geladen, aber erst nachdem der Übergang abgeschlossen ist.
  2. Ich habe den Übergangseffekt ein wenig übertrieben, damit Sie das Problem besser sehen können. Ich habe die Übergangsanimationsgeschwindigkeit in Entwickleroptionen auf 5x festgelegt. Selbst bei 1x Geschwindigkeit ist diese Verzögerung jedoch störend.

Sehen Sie dieses Video: Ссылка

Haben Sie Vorschläge, diese Verzögerung zu verhindern? Warum werden alle Ansichten sofort geladen, aber die Karte selbst nicht?

Testumgebung: Nexus 5, Android 4.4.2, unrooted

Bearbeiten: Dieses Problem tritt auch auf, wenn MapView anstelle von MapFragment verwendet wird.

    
ercan 16.02.2014, 19:56
quelle

1 Antwort

-1

Grund: Es ist, weil, sobald Sie Einstellungen Aktivitäten angezeigt werden, die Kartenaktivität in seinem onpause () Zustand sein wird; Daher nehme ich an, dass das Android-Management den Speicher von der Kartenaktivität zurückgewonnen hat.

Lösung: Erstellen Sie eine statische Klasse und deklarieren Sie, dass Sie dort statisch abbilden, um zu verhindern, dass Android den von Ihrer Map verwendeten Speicher zurückfordert.

Beispiel

%Vor%     
Rick Royd Aban 26.02.2014 04:07
quelle