C# 如何在unity 3d中同时暂停音频源和动画

C# 如何在unity 3d中同时暂停音频源和动画,c#,unity3d,audio-player,pause,C#,Unity3d,Audio Player,Pause,我的手机中有一个场景,动画和音频源可以暂停。我已经知道动画的代码了。我想我的音频源也可以暂停。这是我的代码: using UnityEngine; using UnityEngine.UI; using System.Collections; public class Pause : MonoBehaviour { public Canvas MainCanvas; public Button PauseButton; public Canvas Canvas;

我的手机中有一个场景,动画和音频源可以暂停。我已经知道动画的代码了。我想我的音频源也可以暂停。这是我的代码:

using UnityEngine;

using UnityEngine.UI;

using System.Collections;

public class Pause : MonoBehaviour {

    public Canvas MainCanvas;
    public Button PauseButton;
    public Canvas Canvas;

    public void start() {
        OnUnPause();
    }
    public void OnPause()
    {
        Canvas.enabled = true;
        PauseButton.enabled = false;
        if (MainCanvas.GetComponent<Animator> ().enabled = false) {
            Time.timeScale = 0;
        }

        if (MainCanvas.GetComponent<AudioSource> ().enabled = false) {
            Time.timeScale = 0;
        }       

对于动画,如果将“时间刻度”设置为零,它将自动停止

对于AudioSource,在Pause()函数中是这样的

'public void OnPause()
{
Canvas.enabled=true;
PauseButton.enabled=false;
Time.timeScale=0;
if(maincavas.GetComponent())
{
maincavas.GetComponent().Stop();
}
}`

我在您的代码中没有看到任何音频代码。也许你应该在谷歌上搜索“Unity stop Audio”并尝试你找到的解决方案,然后告诉我们你有什么问题。@程序员我删除了代码中的音频部分,因为它根本不会暂停。我不希望音频停止,但它将暂停。请包括它。你包括你尝试过的不起作用的东西,然后解释什么不起作用,以及你期望它做什么,然后我们会帮助你。只是别指望我们会为你写。您可以将C#标记为这个问题,因为它在C#中,并且会让许多其他Unity C#程序员提供帮助。我试图编辑标签和语法,但这篇文章似乎“大部分是代码”。我建议添加[C#]标记,并根据音频标记wiki中的建议更改[audio player]的[audio]标记。
    public void OnUnPause()
    {
        Canvas.enabled = false;
        PauseButton.enabled = true;
        if (MainCanvas.GetComponent<Animator> ().enabled = true) {
            Time.timeScale = 1;
        }
          if (MainCanvas.GetComponent<AudioSource> ().enabled = true) {
            Time.timeScale = 1;
        }  
    Application.LoadLevel("ABC");
}
    public void finishLevel(){

        Application.LoadLevel ("Classroom");

}
}
'public void OnPause()
{
    Canvas.enabled = true;
    PauseButton.enabled = false;
    Time.timeScale = 0;
    if (MainCanvas.GetComponent<AudioSource> ()) 
    {
        MainCanvas.GetComponent<AudioSource> ().Stop();
    }
}`