0

初めて開いたときにサウンドを再生するiOSアプリがあります。状態復元コードをアプリ デリゲートに追加し、ビュー コントローラーのストーリーボードに復元 ID を設定しました。私のアプリは正しいView Controllerに復元されたようですが、サウンドを開始するView Controllerに開かれていない場合でも、2番目のView Controllerにジャンプしてサウンドを再度再生します。サウンドにカウントを追加して、一度だけ再生されるようにしようとしましたが、機能していないようです。サウンドが再生されないようにするにはどうすればよいですか? 君たちありがとう。

編集:最初のView ControllerでAVPlayerを介してサウンドが再生されていることに言及する必要があります。

***さらに調査した後、最初のView Controllerをバイパスすると、すべてが機能します。

次に、2 番目のビュー コントローラーにタイマーを追加し、タイマーを使用して最初のビュー コントローラーを表示しました。私のアニメーション ブロックでは、完了ハンドラーを使用して最初のビュー コントローラーを閉じると、すべてが機能しているように見えました。現在の唯一の問題は、アプリを強制終了して再度開くと、最初のビュー コントローラーが再び表示されることですが、少なくともそれを閉じると、2 番目のビュー コントローラーに戻ってサウンドのみを再生するのではなく、実際には中断した場所になります。最初のView Controllerから。楽しい小さなアニメーションであり、アプリが強制終了された場合にのみ再生されるため、この方法をそのままにしておくかもしれませんが、なぜこれを行っているのかわかりません. すべての接続、コード、および IB 設定を調べましたが、飛び出すものは何もないようです。

4

1 に答える 1

0

そのカウント変数を静的にします。次のように宣言します。

static int count = 0;
  if(count == 0) {
   //then play the sound here
   //insert code here
  }
//the increment it here
count++;
于 2012-11-20T05:12:25.853 に答える