2010-12-14 7 views
1

In meiner App habe ich eine Login-Ansicht. Wenn ich Anmeldedaten eintrage und auf den Login-Button klicke, bleibt die App für einige Zeit stehen und geht dann weiter. Ich weiß, dass es friert, weil es mit dem Remote-Server kommuniziert, aber wie kann ich das Einfrieren verhindern und stattdessen eine gut aussehende Statusanimation anzeigen?Anwendung friert seit einiger Zeit ein

Antwort

3

Da Sie mit dem Server kommunizieren, wird es einige Zeit dauern, so dass Sie in der Zwischenzeit einige Animationen in alertview hinzufügen können.

Aber durch Aufruf von alertview wird es nicht funktionieren.

So haben Sie in den folgenden Schritten vorgehen:

1) auf Knopf Klicken Sie auf Absenden erste benutzerdefinierte Anzeige Ansicht

2) Animation starten Ansicht

3) Rufen Sie NSThread für Kommunikationsserver hinzufügen, wie

[NSThread detachNewThreadSelector: @selector (IhrAktionsname) toTarget: self withObject: nil];

4) Animationen anzeigen

Weitere Informationen erhalten Sie durch diesen Artikel entfernen: http://iphonedevcentral.blogspot.com/2010/08/safe-threaded-design-and-inter-thread.html

+1

Große Artikel und die Schritte –

+2

Danke, es hat mir wirklich geholfen. –

1

Ihr API-Aufruf blockiert den GUI-Thread. Sie können dies umgehen, indem Sie den Remote-API-Anforderungsaufruf in einen NSOperation-Aufruf verschieben und einen Ladebildschirm aufrufen, bis der API-Aufruf zurückgegeben wird.

Verwandte Themen