2010-11-27 11 views
3

Ich frage mich, kann ich einen CADisplayLink Timer anstelle eines NSTimers verwenden, obwohl ich keine Animation mache?Kann ich CADisplayLink als NSTimer verwenden?

Ich würde gerne eine bestimmte Methode ähnlich wie bei der Verwendung eines NSTimer nennen, nur bei einer viel höheren Frequenz (60 Hz wäre nett), also frage ich mich, ob ein CADisplayLink Timer funktionieren würde, obwohl die Methode einfach macht einige Berechnungen und keine Animation ...

PS Ich teste auf einem iPhone 4

Antwort

4

Ich sehe nicht warum nicht. Sie können sogar eine bessere Leistung von CADisplayLink erhalten, da keine Animation ausgeführt wird. Das einzige Problem, auf das Sie stoßen könnten, ist, wie das Apple Review Board Ihre Verwendung mögen wird.

Ich würde vorschlagen, über die Class Reference zusammen mit dem AvTouch-Beispielcode, der vor der Verwendung bereitgestellt wird.

+0

eigentlich funktioniert es wirklich gut :) – cgossain

+0

Warum hätte Apple Probleme mit der Verwendung von CADisplayLink als Timer? Genau dafür wurde es entwickelt, insbesondere wenn Sie Aktionen mit der Aktualisierungsrate des Displays koordinieren müssen. –

+0

Die Klassenreferenz besagt explizit, dass das CADisplayLink-Objekt zum Synchronisieren der Zeichnung mit der Aktualisierungsrate der Anzeige verwendet wird. Das OP erklärte, dass er es für Berechnungen benötigt. –