【u3d开发】Unity3d AudioSource如何监听播放完成并处理逻辑

想知道AudioSource什么时候播放完成并处理相关的逻辑,比如切换曲目,而unity又没有提供相应的事件,于是想到下面几种方案:

1、Update时时判断isPlaying

2、获取音频的播放长度,Invoke一下

后来查看api的时候突然想到,可以用协程啊。原理和Invoke一样,这应该是最好的方案了。

不过如果音频暂停掉了之后而又没有更新协程函数的话,问题就出现了。所以暂停的时候记得更新协程函数。

时间: 2024-11-04 14:34:30

【u3d开发】Unity3d AudioSource如何监听播放完成并处理逻辑的相关文章

Android开发之使用广播监听网络状态变化

我们经常需要判断网络状态的变化,如有无网络,所以需要监听网络状态的变化,比如网络断开,网络连接给予友好提示.如何监听网络状态的变化呢,最近工作中需要用到这个,于是就用广播机制来实现了网络状态的监听. 使用广播机制来监听网络状态主要涉及到以下几点: 1.需要自己编写个网络广播接收器,该接收器继承BroadcastReceiver类,用来接收系统发出的广播.比如我自己写了个NetStatusReceiver广播接收器.代码如下: package com.log.system; import andr

Unity3D研究之监听Hierachy、Project等视图结构变化的事件

以前就有人问我怎么监听Hierarchy视图中创建或删除变化的事件,当时因为有别的事情就没研究这块.刚好最近有这一类的需求我就学习学习.网上发现了一个日本人写的文档,实现的原理很有意思,内容不错我就翻译一下.本文参考了一个游戏编程网的资料在此注明下. 请注意一定把这两个监听的脚本放在Editor文件夹下. 先是基类. using System; using System.Collections; using System.Reflection; using UnityEditor; using

使用ionic开发时用遇到监听手机返回按钮的问题~

当时用的是ionic开发一个app,需求是,当按下手机的返回按钮,在指定的页面双击退出,而在其他页面点击一次返回到上个页面: 其实用ionic自带的服务就可以解决:  //双击退出   $ionicPlatform.registerBackButtonAction(function (e) {   //判断处于哪个页面时双击退出    if($location.path() =='/message' || $location.path() =='/work' || $location.path(

【转】Android开发20——单个监听器监听多个按钮点击事件

原文网址:http://woshixy.blog.51cto.com/5637578/1093936 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://woshixy.blog.51cto.com/5637578/1093936 一.单个按钮点击事件的监听 方法一 /** * 从网络上获取图片 * * @author 徐越 * */ public class MainActivity extends Activity { pri

#你好Unity3D#Hierarchy视图监听gameObject点击事件

今天无意间又找到了个好方法 1 2 3 4 5 6 7 8 9 10 [InitializeOnLoadMethod] static void Start () { Selection.selectionChanged = delegate { Debug.Log(Selection.activeObject.name); }; } 前几天有朋友问过我怎么监听sceneview 和 hierarchy视图选择某个gameObject的事件,今天干好有时间我就研究研究. 下面的这两个代理事件大家都

安卓开发学习日记 DAY5——监听事件onClick的实现方法

今天主要学习了监听事件的是实现方法,就是说,做了某些动作后,怎么监听这个动作并作出相应反应. 方法主要有三种: 1.匿名内部类的方法 2.独立类的方法 3.类似实现接口的方法 以下分别分析: 1.匿名内部类的方法 就是使用innerClass的方式创建监听事件 步骤如下: 1)创建一个button,在xml中拖入一个button即可 2)在源程序中对button进行初始化 就是,先创建一个button btn,然后使用findViewById找到你之前的那个button进行关联,此时请注意fin

ios开发之--通过通知监听textfield的输入状态,判断按钮的状态

第一步: _rightBtn = [UIButton buttonWithType:UIButtonTypeCustom]; _rightBtn.frame = CGRectMake(kWidth - 50-5, 7, kWidth - _tf.frame.size.width-10, 45); [_rightBtn setBackgroundImage:[UIImage imageNamed:@"send_un"] forState:UIControlStateNormal]; [_

iOS开发之--为UITextField监听数值变化的三种方法

项目中有个验证码输入直接验证跳转页面,用的RAC来监听textfield的输入值,如下: @weakify(self); [self.codeView.textField.rac_textSignal subscribeNext:^(NSString *value) { @strongify(self); self.value = value; //也可以直接在这里写想要执行的操作 }]; //当self.value的值变化时调用Block,这是用KVO的机制,RAC封装了KVO [RACObs

maven+SpringMVC框架开发启动tomcat报监听异常

我们在做web开发是,经常都要在eclipse中搭建web服务器,并将开发中的web项目部署到web服务器进行调试,在此,我选择的是tomcat服务器.之前部署web项目到tomcat进行启动调试都很正常,今天突然出现无法启动情况,启动过程报如下错误: java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener    at org.apache.catalina.loader.We