using System.Collections.Generic; using UIWidgets; using UnityEngine; namespace UIWidgetsSamples { public class TreeViewSampleData : MonoBehaviour { [SerializeField] private TreeViewSample tree; [SerializeField] private List dataEurope = new List(); [SerializeField] private List dataAsia = new List(); private void Start() { tree.Start(); tree.Nodes = GetData(); } private ObservableList> GetData() { ObservableList> observableList = new ObservableList>(); observableList.Add(Node(new TreeViewSampleItemContinent("Africa", 54))); observableList.Add(Node(new TreeViewSampleItemContinent("Antarctica", 12))); observableList.Add(Node(new TreeViewSampleItemContinent("Asia", 48), Data2Country(dataAsia))); observableList.Add(Node(new TreeViewSampleItemContinent("Australia", 4))); observableList.Add(Node(new TreeViewSampleItemContinent("Europe", 50), Data2Country(dataEurope))); observableList.Add(Node(new TreeViewSampleItemContinent("North America", 23))); observableList.Add(Node(new TreeViewSampleItemContinent("South America", 12))); return observableList; } private ObservableList> Data2Country(List data) { ObservableList> countries = new ObservableList>(); data.ForEach(delegate(TreeViewSampleDataCountry x) { countries.Add(Node(new TreeViewSampleItemCountry(x.Name, x.Flag))); }); return countries; } private TreeNode Node(ITreeViewSampleItem item, ObservableList> nodes = null) { return new TreeNode(item, nodes); } } }