最近做项目碰到的,音频播放完成后调用其他函数,都知道unity是有视频播放结束事件的 AVPRO插件里也有,音频的没找到于是就自己写了个方法,因为有暂停重播和快进快退,所以就做了播放模式和其他模式,也可以用自带的isplaying(我觉得在Updata里不好用,所以自己写的),首先播放的时候设置成播放模式,暂停停止。。等等设置为其他模式,逻辑是在播放模式下如果音频的当前时间大于等于音频的总时间 那就是结束播放,设置为其他模式调用播放结束事件。代码如下
if(_audioSource!=null&& _audioSource.clip!=null&& this.AudioState== AudioState.IsPlaying)
{
// // this.AudioState== AudioState.IsPlaying播放模式 是自己定义的模式
if (_audioSource.time >= _audioClips[Audionum].length-0.1f)
{
this.AudioState = AudioState.Stop;//其他模式 是自己定义的模式
// todo音频结束事件;
}
}```