void ToggleValueChanged(Toggle change, UiRoleSelectCharacter role) { if (!change.isOn) { return; } if (role.Gender == Gender.Female) { SetModelActive(_femaleObj, true); SetModelActive(_maleObj, false); } else { SetModelActive(_femaleObj, false); SetModelActive(_maleObj, true); } }
private void CheckUiComponents(int size) { if (_players.Count == size) { return; } int dis = size - _players.Count; if (dis > 0) { // 数据大于控件个数 for (int i = 0; i < dis; i++) { GameObject newObj = UnityEngine.Object.Instantiate(_characterObj); newObj.SetActive(true); newObj.transform.SetParent(_characterParent.transform); newObj.transform.Rotate(0, 0, 0); newObj.transform.localScale = new UnityEngine.Vector3(1, 1, 1); UiRoleSelectCharacter uiCh = new UiRoleSelectCharacter(this, newObj); uiCh.GetUi <Toggle>().group = _toggleGroup; uiCh.GetUi <Toggle>().isOn = i == 0; // 第一个亮起 uiCh.GetUi <Toggle>().onValueChanged.AddListener(delegate { ToggleValueChanged(uiCh.GetUi <Toggle>(), uiCh); }); _players.Add(uiCh); } } else { for (int i = 0; i < dis; i++) { _players.RemoveAt(0); } } }