我正在创建一个应用程序,当用户摇动iPhone播放动画时,我正在使用此代码:
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
if (event.subtype == UIEventSubtypeMotionShake)
{
animation...
}
事情就是上面的代码只要用户摇动iPhone就会做出反应,只需一次。我需要用户上下摇动它,好像他们正在摇晃一个瓶子,几秒钟然后动画播放,同时他们摇动一个mp3文件必须播放,当动画播放声音必须播放时,请帮助,我是一个初学者,所以解释答案,谢谢:)
答案 0 :(得分:2)
在您的.h文件中声明int numOfShakes;
,并在每次用户摇动手机时递增它,一旦达到一定量的抖动,然后调用动画代码
- (void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {
if (event.subtype == UIEventSubtypeMotionShake) {
if (numOfShakes == 10) {
//animate
//Shook for a couple seconds
numOfShakes = 0;
} else {
numOfShakes++;
if (numOfShakes == 1) {
//play some mp3
}
}
}
}