【问题标题】:Is it possible to have a sound play before/during the splash screen?在启动画面之前/期间是否可以播放声音?
【发布时间】:2009-09-25 15:42:02
【问题描述】:

我的应用需要几秒钟才能加载,而且我有一个启动画面。一旦“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];

感谢您的宝贵时间!

【问题讨论】:

    标签: iphone objective-c audio viewdidload


    【解决方案1】:

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

    【讨论】:

    • 最多一秒...两到五秒就是永远!
    • 没错,但是如果您的启动画面是您希望用户阅读的内容,那么您需要给他们足够的时间。如果您只放置一个徽标或图形,那么越短越好。请记住,您可以通过点击关闭屏幕及其淡出,这样用户可以在应用加载后立即继续使用您的应用。另外,如果您觉得用户在前几次之后不需要太多时间来阅读启动画面,那么您可以减少时间,当它显示第 n 次或更多次时。
    • 这不是在应用程序完成启动期间播放声音的正确方式...我试过了,但有问题可能是设置 Default.png 的一些方法。所以,当出现闪屏 我无法立即播放音乐,使用 Default.png 播放音乐有延迟!!!所以你能建议其他方法吗……除此之外,我也被困住了……
    【解决方案2】:

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

    【讨论】:

    • 谢谢。但我希望在应用首次启动时立即开始播放声音。
    • 你不能。您只能缩短 default.png 和代码执行之间的时间。
    • 我就是这么想的,非常感谢
    【解决方案3】:

    我喜欢让启动画面稍长一点以播放声音的技术,但请注意您正在搞乱 HIG 指南,其中指出“避免显示关于窗口、启动画面或提供任何其他类型的启动体验这会阻止人们立即使用您的应用程序。” (第 45 页)

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-02
      相关资源
      最近更新 更多