2009-09-25 59 views
2

我的应用需要几秒钟才能加载,我有一个启动画面。一旦“viewDidLoad”我有一点声音播放。我觉得如果在启动画面弹出时开始播放,声音会更好地使用。启动屏幕之前/期间是否可以启动声音?在启动画面之前/期间是否可以播放声音?

这里是我的代码:(viewDidLoad中下)

NSString *soundFilePath = [[NSBundle mainBundle] pathForResource: @"intorSound" ofType: @"aif"]; 
     NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath]; 
     player = [[AVAudioPlayer alloc] initWithContentsOfURL: fileURL error: nil]; 
     [player setVolume: soundVolumeValue]; // available range is 0.0 through 1.0 
     [player play]; 

     [fileURL release]; 

谢谢您的时间!

回答

4

一个小技巧是使用相同的闪屏作为您为Default.png,让你控制的无缝过渡到代码。当applicationDidLaunch被调用时,开始播放声音,并显示启动画面。如果你愿意,你也可以在启动画面上放一点进度指示器。在viewDidLoad中,当你完成所有的初始化时,做一个2-5秒左右的闪屏淡入。您可以使用代码打开屏幕,从而让用户有时间阅读启动屏幕或点击屏幕来解除启动屏幕。这一切都使得Default.png显示的时间量没有声音显得微不足道。

+0

一秒钟最大......两到五秒永远! – 2010-04-25 18:19:38

+0

的确如此,但是如果您的启动画面是您想让用户阅读的内容,那么您需要给他们的眼睛足够的时间。如果你所做的只是一个标志或一个图形,那么短小就更好。请记住,您可以通过轻按来关闭屏幕及其淡出,这样,用户可以在应用加载后尽快使用您的应用。此外,如果您觉得用户在开始几次后不需要太多时间阅读启动画面,则可以减少显示第n次或更多时间的时间。 – mahboudz 2010-04-26 19:16:10

+0

这不是在应用程序完成启动期间播放声音的正确方式...我尝试过,但存在问题,可能存在Default.png设置的某些方法。因此,当启动屏幕出现时,我无法立即播放音乐,使用Default.png播放音乐有延迟!所以你可以建议其他的方式...除此之外,我被卡住了相同.. – 2010-12-02 06:34:06

1

您可以显示自己的启动画面并在后台加载您的应用程序。这样,只要applicationDidLauch完成,您就可以显示自己的启动画面和声音,然后在用户看到时加载其余部分。

+0

谢谢。但是我希望在应用第一次启动时就开始播放声音。 – Jeff 2009-09-25 17:11:43

+0

你不能。您只能在default.png和您的代码执行之间缩短这段时间。 – coneybeare 2009-09-25 17:18:24

+0

多数民众赞成多少我认为非常感谢你 – Jeff 2009-09-25 17:37:30

0

我想离开闪屏了更长的时间来播放声音的技术,但要注意你与HIG准则搞乱该国“避免显示的关于窗口,启动画面,或提供任何其他类型的启动,经验,阻止人们立即使用您的应用程序。“ (第45页)

他们也谈论更多关于启动图像页。 123并强调它不应该建立你的品牌。然而,你总是看到这一点,它有时被称为“最常破的规则” - 但要注意你旁边有一条线跳舞。