我正尝试在touchesEnded上播放声音,但遇到问题。有多个对象被移动,所以如果下面的代码在任何对象被移动时都是真的,它就会不断地播放声音。我怎么能只玩一次?
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
if(CGRectContainsRect([image1 frame], [image2 frame])){
[self playsound];
}
}发布于 2010-04-30 11:40:52
如果您只想让它为某个调用touchesEnded的对象播放,那么首先需要标识该对象,然后只需执行一个if-then语句即可。
如果你只想让它播放一次,那么只需给它一个快速的变量,比如int playCount = 0;,然后在你完成播放后将它设置为playCount = 1;,并对其执行if-then语句(即,如果playCount为0就播放它,如果playCount为1就不播放它)。
https://stackoverflow.com/questions/2516300
复制相似问题