2017-04-24 78 views
1

我正在使用統一的android應用程序,它允許用戶輸入語音或文本(通過文本字段),那麼用戶將獲得與由該字符輸入的詞匹配的動畫,也如果用戶觸摸該按鈕,則會有一個重複按鈕來播放動畫。 但現在我被困在重複按鈕代碼中,我不知道錯誤在哪裏。unity3d中的重播按鈕腳本

+0

我想重複按鈕的工作,重新播放動畫,但事實並非如此。 – jony

+0

它根本不工作?你在OnGUI()方法中設置了日誌(例如'Debug.Log(「OnGUI()被調用」);)'?它被稱爲? – Sergey

回答

0

你可以嘗試聽者Start()方法添加到按鈕:

void Start() { 
    gameObject.GetComponent<Button>().onClick.AddListener(() => 
    { 
     var animator = GetComponent<Animator>(); 
     animator.Play("BeginMove"); 
    }); 
} 
+0

它給我一個編譯器錯誤。 – jony

+0

在這一行:SomeButton.GetComponent

+0

你需要獲得按鈕的實例,並添加監聽器,就像在我編輯的答案 – Sergey

0

你能設法得到它附加了動畫組件對象的引用。 您試圖從按鈕腳本中獲取animator組件,animator組件是否附加到gameobject?
試試這個

public words CurrentObjectWithAnimator; //Take Reference for Animator 


     void OnGUI() 
      { 
      if (GUI.Button(new Rect(10, 70, 50, 30), "Replay")) 
      { 
       //CurrentObjectWithAnimator = GameObject.Find("Current object with animator"); 
       var animator = CurrentObjectWithAnimator.GetComponent<Animator>(); 
       animator.Play("BeginMove"); 
      } 
      } 
      } 
+0

你確定我必須使用OnGUI,而我在場景中創建按鈕! – jony