protected override void Init() { base.Init(); if (View.ListScroller == null) { Debug.LogWarningFormat("<color=\"aqua\">{0} needs {1} to work properly.</color>", this, typeof(VirtualListScroller)); return; } View.ListScroller.ItemIndexChangedEvent += ItemIndexChangedHandler; //Create list item mediators for (var i = 0; i < View.ListScroller.NumRenderers; i++) { ItemMediators.Add(CreateItemMediator(i, View.ItemPrefab, View.ContentsParent)); } View.ListScroller.Init(); }
private TMediator GetMediator(int index) { TMediator listItem; if (index < 0) { return(null); } if (index < ItemMediators.Count) { listItem = ItemMediators[index]; listItem.SetActive(true); } else { listItem = CreateItemMediator(index, View.ItemPrefab, View.ContentsParent); ItemMediators.Add(listItem); } return(listItem); }