2009-04-21 11 views
1

In meiner App habe ich einen Timer, der herunter zählt, und wenn es anhält, wird ein Bild angezeigt und ein Ton wird abgespielt.Kurzer Sound am Timer-Ende?

Der Ton wird wie folgt geladen:

NSString * path = [[NSBundle main] pathForResource: @ "schreien" ofType: @ "wav"]; AudioServicesCreateSystemSoundID ((CFURLRef)) [NSURL fileURLWithPath: Pfad], & soundID);

Und wie diese auf Timer Ende gespielt:

AudioServicesPlaySystemSound (soundID);

Mein Problem ist, dass der Sound nicht rechtzeitig gespielt wird. Obwohl die Sound-Instanz vor dem Bild aufgerufen wird, erscheint das Bild vor dem Sound. Dies tritt nur beim ersten Mal auf, wenn der Sound abgespielt wird. Der Sound wird in die viewDidLoad-Methode geladen.

Gibt es einen besseren Weg, oder was mache ich falsch?

Dank ...

+0

vielleicht, weil ich 3.0 Beta 2 laufen lasse? Denn nach einem Neustart läuft es gut ... –

+0

Für solche Timing-Probleme bevorzuge ich Gerätetests. Der Simulator ist in solchen Fällen nicht immer genau. – Jab

+0

Ja, es ist Gerät testen mit Beta 2 ... Ich stimme dem Simulator Teil .. –

Antwort

1

Vielleicht wird der Ton verzögert, während die Lautsprecher (für den ersten Ton) eingeschaltet wird. Wenn ja, können Sie es vielleicht umgehen, indem Sie vorher einen anderen, nicht wahrnehmbaren Ton abspielen, so dass der Lautsprecher bereit ist zu gehen, wenn Sie den "echten" Klang anfordern.

+0

das könnte funktionieren ... Ich werde das versuchen danke ... –