void ClearPageButtons() { List <Transform> pageObj = new List <Transform>(); for (int i = 0; i < pageGridObject.transform.childCount; i++) { Transform pageTrans = pageGridObject.transform.GetChild(i); pageObj.Add(pageTrans); UnityUIPageInfo pageInfo = pageTrans.gameObject.GetComponent <UnityUIPageInfo>(); OnPageButtonClicked -= pageInfo.StoreCurrentPage; } pageGridObject.transform.DetachChildren(); foreach (Transform gridItemObj in pageObj) { Destroy(gridItemObj.gameObject); } }
void SetPageButtons(int pageAmount) { ClearPageButtons(); for (int i = pageAmount - 1; i > -1; i--) { GameObject newPage = (GameObject)GameObject.Instantiate(pageButtonPrefab); newPage.transform.SetParent(pageGridObject.transform); newPage.transform.localScale = new Vector3(1, 1, 1); UnityUIPageInfo pageInfo = newPage.GetComponent <UnityUIPageInfo>(); pageInfo.Init(i, this); OnPageButtonClicked += pageInfo.StoreCurrentPage; Button pageButton = newPage.GetComponent <Button>(); pageButton.onClick.AddListener(OnPageButtonClicked); } }