0

我有一个 ios 应用程序,它在第一次打开时会播放声音。我已将状态恢复代码添加到我的应用程序委托中,并在我的故事板中的视图控制器中设置恢复 ID。我的应用程序似乎恢复到正确的视图控制器,但随后跳回到第二个视图控制器并再次播放声音,即使它没有打开到启动声音的视图控制器。我尝试为声音添加计数,这样它只会播放一次,但似乎不起作用。如何让声音不再播放?感谢你们。

编辑:我应该提到声音是通过我的初始视图控制器中的 AVPlayer 播放的。

***经过进一步检查,如果我绕过我的第一个视图控制器,一切正常。

然后我在我的第二个视图控制器中添加了一个计时器,并使用计时器呈现了我的第一个视图控制器。在我的动画块中,我使用完成处理程序来关闭第一个视图控制器,然后一切似乎都正常工作。现在唯一的问题是,当应用程序被杀死并重新打开时,它会再次显示第一个视图控制器,但至少当它现在关闭它时,它实际上是你离开的地方,而不是跳回第二个视图控制器并且只播放声音从第一个视图控制器。我可能会保持这种方式,因为它是一个有趣的小动画,并且只有在应用程序被杀死时才会播放,但我只是不明白它为什么这样做。我查看了我所有的连接、代码和 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 回答