jashan Geschrieben 2. Januar 2015 Melden Share Geschrieben 2. Januar 2015 Inspiriert von der Frage von Felix zu SelectionList habe ich eben mal ein kleines Video-Tutorial zu eben diesem Thema erstellt und freue mich über Feedback (und natürlich, wenn es dem Einen oder Anderen nützt): Und das Beispielprojekt dazu (ist ein Unity-Package, kann man in ein beliebiges Projekt importieren, entpackt sich ins Verzeichnis "Examples"): SelectionListExample 8 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Alexej Geschrieben 3. Februar 2015 Melden Share Geschrieben 3. Februar 2015 Sehr gut erklärt und ein klasse Beispiel ! Vielen Dank ! 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
jashan Geschrieben 4. Februar 2015 Autor Melden Share Geschrieben 4. Februar 2015 Danke für das Feedback - es freut mich, wenn es nützlich ist! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Coredriver Geschrieben 27. Februar 2015 Melden Share Geschrieben 27. Februar 2015 Ein schöne Erklärung, die mir auch das eigentliche GUI-System näher gebracht hat. Eine Frage habe ich jetzt trotzdem noch: Kann man auf den Child Text irgentwie nach der Instanzierung zugreifen?. Es wäre super Lösung für ein Inventar 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
jashan Geschrieben 27. Februar 2015 Autor Melden Share Geschrieben 27. Februar 2015 Eine Frage habe ich jetzt trotzdem noch: Kann man auf den Child Text irgentwie nach der Instanzierung zugreifen?. Klar! So wie's in dem Beispiel implementiert ist, wäre es etwas umständlich, weil die einzelnen Einträge nur in einem Stack verwaltet werden, der nur dazu gedacht ist, leicht Einträge löschen zu können. Aber du könntest die Einträge problemlos auch in einer entsprechenden Liste verwalten und dann über diese Liste direkt auf jeden beliebigen Eintrag zugreifen. Für einen Inventar würde ich da wahrscheinlich eine Komponente (=Script) InventoryItem bauen, und auf das Wurzelelement der Einträge legen (das wäre im Beispiel bei dem Prefab "Button"). Dieses InventoryItem würde sich dann z.B. darum kümmern, dass das korrekte Bild angezeigt wird, und was man sonst noch so braucht. Dann könntest du irgendwo (wo es halt gut passt) eine List<InventoryItem> haben, und über diese alles machen, was InventoryItem anbietet (z.B. Text ändern, sofern man mit Texten arbeitet, oder Bild ändern ... oder auch die Anzahl ändern, wenn es ein "Stackable Item" ist). 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Coredriver Geschrieben 27. Februar 2015 Melden Share Geschrieben 27. Februar 2015 Ich arbeite mit einem Dictionary das als Key den Itemnamen aus InventoryItem bekommt. (InventoryItem ist Component vom jeweiligen Item) Als Value wird ein Sprite und die quantity mitgegeben. InventoryItemProperties ip = new InventoryItemProperties(); ip.texture = texture; ip.quantity = 1; items.Add(itemName, ip); Danach wird ein neuer Eintrag in der SelectionList vorgenommen aber da hänge ich jetzt. Ich habe kein Plan von zur Laufzeit Dinge mit der GUI anzustellen. Also müsste ich jetzt den Stack ersetzen durch eine List. Dort drin auch speichern welche Texture und welcher Text für die Anzahl angezeigt werden soll. Und das wieder in einer UpdateView() oder s.ä zeichnen lassen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.