Jump to content
Unity Insider Forum

Mausklick auf UI Text: Textzeile auslesen


minuschki

Recommended Posts

Hallo zusammen

Ich habe einen UI Text mit mehreren Zeilen als Canvas-Element in einem 2D Projekt platziert. Der Text enthält normale Zeilenumbrüche. Für die Darstellung in Unity habe ich Arial mit Fontsize 20 gewählt. Der dargestellte Text soll als Auswahlmenü genutzt werden.

Nun möchte ich die Zeilennummer oder den Zeileninhalt herausfinden, wenn ich mit der Maus auf eine Zeile klicke! Angenommen es handelt sich um ein Inhaltsverzeichnis mit 22 Kapiteln und ich klicke auf die siebte Zeile, sollte ich als Resultat 7 erhalten oder den Zeilentext der angeklickten Zeile.

Gibt es dafür einen vordefinierten Code wie z.B. get.text.line.clicked oder mouse.text.line oder weiss der Geier, wie das heissen könnte oder wie kann man das bewerkstelligen? Hoffentlich geht das relativ einfach und nicht mit mühsamen Mausposition-Textposition-Zeilenposition-Berechnungen!

Danke für eure Hilfe!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Aus deiner Antwort schliesse ich, dass es keinen Code gibt, der die Zeilennummer oder deren Inhalt beim Anklicken identifizieren kann. Dann wird das wahrscheinlich auch nichts, mit einer scrollbaren Textliste! Ich hatte vergessen zu erwähnen, dass die Liste von Fall zu Fall unterschiedlich lang sein kann. Wenn sie z.B. 100 Zeilen hat, ist die Lösung mit den einzelnen Objekten etwas schwierig umzusetzen.

Ein möglicher Lösungsweg, um deinen Vorschlag umzusetzen, wäre beispielsweise 10 Objekte zu erstellen und diese mit den ersten 10 Zeilen zu füllen. Daneben zwei Buttons zum rauf oder runder zu scrollen. Wird dann der runter-Button gedrückt, werden die nächsten 10 Zeilen in die vorbereiteten Objekte gefüllt, beim rauf-Button die vorherigen 10 Zeilen.

Ist diese Idee empfehlenswert oder eine, die nur einem blutigen Anfänger in den Sinn kommen kann?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nö, klingt super. Du kannst das auch in kleineren Schritten machen (alle Inhalte eine Zeile weiter nach oben schieben) und von da aus sogar Animationen einbauen, dass von unten eine neue Zeile reinkommt und die oberste deaktiviert wird, um dann als neue unterste Zeile reaktiviert zu werden, wenn weiter gescrollt wird. Dann sieht der Spieler nicht einmal mehr, dass du keine 100 Objekte hast. Aber deine aktuelle Idee ist schon gut und richtig.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...