public void LoadItems()
        {
            foreach (Transform child in transform)
            {
                Destroy(child.gameObject);
            }
            Text loadingText = Instantiate(LoadingTextPrefab) as Text;

            StyleApplier.ApplyStyleToTitleText(loadingText);
            loadingText.transform.SetParent(transform, false);

            FriendsAvailableHandler = delegate(List <GameState.PlayerInfo> friends)
            {
                foreach (Transform child in transform)
                {
                    Destroy(child.gameObject);
                }
                foreach (var friend in friends)
                {
                    // Create instance of button prefab
                    var button = Instantiate(FriendChoiceButtonPrefab) as Button;
                    // The container allows us to reference and manipulate the button's text field
                    var contentContainer = button.GetComponent <FriendChoiceButtonContentContainer>();
                    contentContainer.Text.text = friend.Name;
                    StyleApplier.ApplyStyleToLabelText(contentContainer.Text);
                    StyleApplier.ApplyStyleToButton(button);
                    // Unchanging reference so that the onClick listener is referring to the correct friend
                    var consistentRefFriend = friend;
                    button.onClick.AddListener(delegate
                    {
                        GameManager.Instance.LoadNewMatch(consistentRefFriend);
                    });
                    button.transform.SetParent(gameObject.transform, false);
                }
            };
            GameManager.Instance.RegisterOnFriendsAvailableHandler(FriendsAvailableHandler);
        }
        public void LoadItems()
        {
            foreach (Transform child in transform)
            {
                Destroy(child.gameObject);
            }
            Text loadingText = Instantiate(LoadingTextPrefab) as Text;
            StyleApplier.ApplyStyleToTitleText(loadingText);
            loadingText.transform.SetParent(transform, false);

            FriendsAvailableHandler = delegate(List<GameState.PlayerInfo> friends)
            {
                foreach (Transform child in transform)
                {
                    Destroy(child.gameObject);
                }
                foreach (var friend in friends)
                {
                    // Create instance of button prefab
                    var button = Instantiate(FriendChoiceButtonPrefab) as Button;
                    // The container allows us to reference and manipulate the button's text field
                    var contentContainer = button.GetComponent<FriendChoiceButtonContentContainer>();
                    contentContainer.Text.text = friend.Name;
                    StyleApplier.ApplyStyleToLabelText(contentContainer.Text);
                    StyleApplier.ApplyStyleToButton(button);
                    // Unchanging reference so that the onClick listener is referring to the correct friend
                    var consistentRefFriend = friend;
                    button.onClick.AddListener(delegate
                    {
                        GameManager.Instance.LoadNewMatch(consistentRefFriend);
                    });
                    button.transform.SetParent(gameObject.transform, false);
                }
            };
            GameManager.Instance.RegisterOnFriendsAvailableHandler(FriendsAvailableHandler);
        }