2016-04-07 16 views
0

Ich habe eine Schaltfläche unter einer Zeichenfläche, die die Szene neu starten soll. Stattdessen wird die beabsichtigte Funktion des angehängten Skripts nicht aufgerufen.Unity UI Button ruft nicht die Onclick-Methode auf

In Unity-Foren habe ich Lösungen gefunden, wie sie in einer höheren Hierarchie im Canvas sein sollten, und die Leinwand sollte eine grafische Raycast-Funktion und so weiter enthalten.

Aber es funktioniert immer noch nicht, obwohl sein on click array die beabsichtigte Methode erkennt, die es aufrufen soll.

Scene Editor with Canvas Selected Scene Editor with Button Selected

+0

Ist mit der Schaltfläche überhaupt ein Klick registriert? Wenn nicht, dann müssen Sie uns wahrscheinlich die Eigenschaften von Canvas und Button zeigen, damit wir herausfinden können, ob Sie etwas falsch eingerichtet haben. – Serlite

+0

Wie hast du das aufgebaut? Hast du ein neues OnClick-Ereignis (mit dem +) auf der Schaltfläche hinzugefügt? Hast du das Spielobjekt, das das Skript mit der gewünschten Funktion hat, in den Slot gezogen und dann die richtige Funktion aus dem Drop-down ausgewählt? –

+0

Ich klickte auf das + Symbol für onclick Liste und dann öffnete es drei Steckplätze, einer von ihnen sollte das Objekt mit Skript halten, ein anderer war die gewünschte Funktion aus Dropdown – Jajan

Antwort

0
  1. die Leinwand Komponente aus Ihrer Schaltfläche Entfernen.
  2. Stellen Sie sicher, dass sich auf Ihrer Leinwand ein GraphicRaycaster befindet, und dass sich irgendwo in der Hierarchie ein EventSystem Objekt befindet.

(beide hinzugefügt werden sollten, wenn Sie zuerst die Leinwand hinzugefügt, aber die Dinge gehen verloren)

+0

Ja, ich habe Grafiken Raycast-Komponente und Eventsystem-Objekt ... – Jajan

+0

Ich habe mir nur Ihre Bilder angesehen, entfernen Sie die Canvas-Komponente von Ihrem Button-Objekt! – Allen

0

Der Screenshot, dass Ihre Schaltfläche zeigt ausgewählt wird, zeigt auch, dass Sie ein Gameobject für das OnClick-Ereignis holen tat , aber Sie haben keine Funktion aus dem Dropdown-Menü direkt neben diesem Feld ausgewählt, es heißt no function.

+0

Auch nur die Antwort als richtig ankreuzen, dass Ihr Problem gelöst wurde (oder, wenn mehrere, die beste). Joe Blow war ein bisschen betrunken, als er schrieb;) –

+0

@Gunner, ich hätte vielleicht den falschen Screenshot gepostet, aber das Problem ist, dass der Button nicht gedrückt/geklickt wird. Auch wenn ich sicher bin, dass im Drop-down-Menü eine Methode ausgewählt ist, funktioniert sie nicht. : | – Jajan

+0

Ändert die Schaltfläche bei Hover und Klick die Farbe? –

0

„ Statt die C# Klasse auszuwählen, wählen Sie die Gameobject dass btnSceneSelect zu angebracht ist.

Wenn btnSceneSelect nicht auf einen Gameobject angebracht ist, bringen es auf eine (andere als die Taste). “

Entnommen von this site

Verwandte Themen