Frage

Ich habe über diese Funktion gelesen didReceiveMemoryWarning Das hat eigentlich nicht wirklich geholfen. Ich möchte eine Uialert -Ansicht zeigen, um dem Benutzer mitzuteilen, dass die Aktion, die er kurz vornehmen wird, zu Problemen mit dem Speicher führen wird.

Abgesehen vom Absturz ist es eine böse Möglichkeit, den Benutzer darüber zu informieren, dass eine Speicherwarnung empfangen wird, eine mögliche Implementierung einer UialertView?

War es hilfreich?

Lösung

In Ihrer Anwendungsdelegierklasse (z. B. MyApplicationAppdelegate.m) implementieren Sie die Methode didreceivememoryWarning:

- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
{
  // Show an alert
  UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Warning"
                                                  message:@"Running low on memory"
                                                 delegate:nil
                                        cancelButtonTitle:@"OK"
                                        otherButtonTitles:nil];

  [alert show];
  [alert release];
}

Andere Tipps

Pheelicks hat Ihnen eine gute Antwort auf Ihre Frage gegeben, aber dies ist definitiv nicht das, was Sie tun möchten. Wenn Sie diese Warnung erhalten, befinden Sie sich bereits in geringer Speicherbedingung. Was Sie tun möchten, wenn Sie diese Warnung erhalten, ist die Freigabe so viel Speicher wie möglich. Wie große Bilder, die Sie möglicherweise im Speicher, großen Arrays der Saite oder eines anderen großen Objekts halten. Instrumente helfen Ihnen sehr, die Schuldigen zu finden.

Außerdem möchten Sie auch didreceivememoryWarning auf jedem View -Controller implementieren, der eine Menge Speicher zuweist, damit sie dort oben auch etwas sauber machen können

Hofft das hilft :)

Die Aktion, die er im Begriff ist, wird zu Problemen mit dem Gedächtnis führen

Wenn es einige Maßnahmen gibt, die Sie kennen, wenn der Benutzer zu Speicherproblemen führt, sollten Sie sie davon abhalten, diese Aktion zu ergreifen, oder sie selbst selbst warnen, wenn sie die Aktion ergreifen möchten (mit einer Warnansicht).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top