/// <summary> /// 当显示时初始化按键数据 /// </summary> private void OnEnable() { playerState = DataCenter.Instance.GetEntity <PlayerState>(); keyContactData = DataCenter.Instance.GetEntity <KeyContactData>(); skillStructData = DataCenter.Instance.GetMetaData <SkillStructData>(); selectTargetPanel.gameObject.SetActive(false); UIManager.Instance.KeyUpHandle += Instance_KeyUpHandle; enumKeySettingType = EnumKeySettingType.Lattice; if (keySettingFocusPath) { nowKeySettingLattice = keySettingFocusPath.GetFirstFocus() as UIFocusKeySettingLattice; if (nowKeySettingLattice) { nowKeySettingLattice.SetForcus(); } //初始化显示 UIFocus[] uiKeySettingLatticeArray = keySettingFocusPath.NewUIFocusArray;// keySettingFocusPath.UIFocuesArray; foreach (UIFocus item in uiKeySettingLatticeArray) { if (!item) { continue; } UIFocusKeySettingLattice uiKeySettingLattice = item as UIFocusKeySettingLattice; int inputKey = uiKeySettingLattice.GetKeySettingInput();//输入的按键值 if (uiKeySettingLattice) { KeyContactStruct[] keyContactStructs = keyContactData.GetKeyContactStruct(inputKey); if (keyContactStructs.Length > 0) { uiKeySettingLattice.keyLatticeType = keyContactStructs[0].keyContactType; uiKeySettingLattice.id = keyContactStructs[0].id; } else { uiKeySettingLattice.keyLatticeType = EnumKeyContactType.None; uiKeySettingLattice.id = 0; } //初始化显示 uiKeySettingLattice.InitShow(); } } } }
/// <summary> /// 选择当前项 /// </summary> private void SelectAction() { if (nowKeySettingLattice) { //设置当前框内的显示图片 if (nowKeySettingListItem && nowKeySettingListItem.value != null) { KeyContactStruct keyContactStruct = (KeyContactStruct)nowKeySettingListItem.value; nowKeySettingLattice.keyLatticeType = keyContactStruct.keyContactType; nowKeySettingLattice.id = keyContactStruct.id; } else { nowKeySettingLattice.keyLatticeType = EnumKeyContactType.None; nowKeySettingLattice.id = 0; } nowKeySettingLattice.InitShow(); } //最后的设置 selectTargetPanel.gameObject.SetActive(false); //状态改为格子状态 enumKeySettingType = EnumKeySettingType.Lattice; }