2011-01-04 16 views
0

Ich benutze Core-Plot in meiner iPhone App, um Daten in Plots von NSMutableArrays anzuzeigen. Ich zeige 10 Werte auf dem Bildschirm an und ich erlaubte horizontales Scrollen nur so dass ich alle Werte sehen kann, wenn ich scrolle. Ich habe etwas wie 100-200 Werte insgesamt zu laden. Ich benutze differents tabBars, um meine unterschiedlichen Bedürfnisse zu behandeln.Verzögerung beim Scrollen

Alles funktioniert gut, aber wenn ich meine App auf dem iPhone starte, habe ich einige monströse Laggs beim Scrollen. Etwa 2 Sekunden nach dem Verschieben des Graphen (auf dem Simulator gibt es keine laggs). Ich lade Grafik neu, wenn ich das iPhone schüttele. Ich arbeite an einem 3GS, und im Hintergrund läuft keine andere App.

Hat jemand so etwas gelöst und gelöst?

Benötigen Sie weitere Informationen?

+0

Wenn Sie das Time Profiler-Instrument für Ihre Anwendung ausführen, wo steht beim Scrollen der Hotspot in Ihrem Code? –

+0

Ich bin mir nicht sicher, ob du deine Frage gut verstehst. Wenn ich Instrument (OpenGL ES) verwende, kann ich die fps sehen, und wenn ich scrolle, liegen die fps zwischen 10 und 15, was sehr niedrig ist. Gibt es etwas zu tun, um die Grafik besser als ich zu erstellen? wie Aufgaben trennen oder etwas anderes? – ciwol

Antwort

0

UITable (und UIScrollView) hat einen Fehler, in dem es layoutSubviews auf seinem übergeordneten Element ruft. Stellen Sie sicher, dass dies nicht Ihren Ärger verursacht. Wenn dies der Fall ist, können Sie es möglicherweise lösen, indem Sie die Tabelle in eine andere UIView einfügen. Ich mache das routinemäßig, um dieses Problem zu vermeiden.

Eine andere Sache, die wirklich langsames Scrollen verursachen kann, ist eine Menge Masken, Transparenzen usw. in Ihren Zellen. Versuchen Sie dazu, die Ansichten auf Raster zu setzen, was bedeutet, dass sie sich einmal in einen Puffer zeichnen, anstatt sich jedes Mal neu zu zeichnen.

Verwandte Themen