我在场景中的播放按钮将当前菜单场景更改为实际的关卡场景。
我以代理人的形式添加了 listener 方法:
playLevel.onClick.AddListener(delegate { LoadLevel();})
在大多数情况下,它运行正常,但是有时当我单击按钮时,游戏会滞后一秒钟,并且可以再次单击该按钮,因此两次打开“关卡”场景。
有人对如何防止这种情况有任何想法吗?谢谢
答案 0 :(得分:0)
有时:)?看起来您的按钮具有使用相同方法的多个侦听器。可能只是在同一游戏会话中您多次单击同一按钮。
您的代码: playLevel.onClick.AddListener(委托{LoadLevel();})
当您单击EVERYTIME时,此代码将您的方法块委托给侦听器。 我认为只需尝试playLevel.onClick.RemoveAllListeners()或使用playLevel.onClick.RemoveListener(-your actionCall-)删除一个特定的对象(如果您不想删除所有对象),然后再委派一个新的对象。