【问题标题】:Play rhythmic sound when view is spinning视图旋转时播放有节奏的声音
【发布时间】:2015-07-24 11:12:21
【问题描述】:

我想在视图旋转时播放有节奏的声音,具体取决于速度。这里我有 UIview 的旋转动画。

    var spinAnimation : CABasicAnimation = CABasicAnimation(keyPath: "transform.rotation")
spinAnimation.fromValue = 0
spinAnimation.toValue =  NSNumber(double: 10.0+Double(arc4random_uniform(360))*M_PI * 3)
spinAnimation.duration = 5
spinAnimation.delegate = self
spinAnimation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)

layer.addAnimation(spinAnimation, forKey: "SpinAnimation")

如何通过声音向用户反馈旋转速度?

【问题讨论】:

  • 您想在视图旋转时播放有节奏的声音或将旋转速度提供给用户。 pl。澄清。
  • 我想根据旋转速度播放声音。意味着如果视图快速旋转,我需要大声播放声音。速度变慢了,我需要少放点声音。

标签: swift rotation core-animation caanimation


【解决方案1】:

在苹果开发者文档中,他们提供了更改音乐音量的选项,pl。请参考以下网址

https://developer.apple.com/library/prerelease/ios/documentation/AVFoundation/Reference/AVAudioPlayerClassReference/index.html

您可以使用下面的代码 sn-p 供您参考

var spinnigSpeedMusic= AVAudioPlayer()
var spinningMusicUrl:NSURL =    NSBundle.mainBundle().URLForResource("spinningSpeed", withExtension: ".mp33")
spinnigSpeedMusic = AVAudioPlayer(contentsOfURL:spinningMusicUrl, error: nil)      

spinnigSpeedMusic.prepareToPlay()
spinnigSpeedMusic.play()
spinnigSpeedMusic.volume = 0.1 // this value can be changed from 0.0 to 1, based on the rotation speed. 

【讨论】:

  • 这里 spinnigSpeedMusic.volume 需要根据旋转速度改变,我需要根据旋转来管理声音。 spinnigSpeedMusic.volume 需要在 animationDidStart: animationDidStop:finished: Delegates 之间改变
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多