void OnSkillTypeBtnActive(UISkillTypeBtn btn) { if (mActiveSkillType == null) { GameObject go = mSkillTypePrefab.CreateNew(mContent); UISkillType type = go.GetComponent <UISkillType>(); type.onSkillItemLernBtn += OnSkillItemLernClick; type.onSelectItemChanged += OnSkillItemSelectChanged; mActiveSkillType = type; } mActiveSkillType.data = mSkillTypeDatas[btn.index]; mSkillTypeCtrl.desc = mActiveSkillType.data.info._desc; // Set Position UpdateSkillTypePos(); if (mActiveSkillType != null) { mActiveSkillType.selectItem = null; } }
// SetContent public void SetContent(int count, DSkillBtnNotify setContent) { mSkillBtnGos.RefreshItem(count, btnPrefab, btnGrid.transform); mSkillBtnItems.Clear(); if (setContent != null) { for (int i = 0; i < count; i++) { UISkillTypeBtn btn = mSkillBtnGos[i].GetComponent <UISkillTypeBtn>(); mSkillBtnItems.Add(btn); btn.index = i; btn.onBtnClick -= OnSkillBtnClick; btn.onBtnClick += OnSkillBtnClick; if (setContent != null) { setContent(btn); } } } btnGrid.repositionNow = true; // Set Info wnd position and size float btn_size = mSkillBtnGos.Count * btnGrid.cellWidth + btnGrid.transform.position.x; float bg_x = btn_size + 20; float bg_xSize = panel.clipRange.z - bg_x; Vector3 bg_pos = bgTracer.transform.localPosition; Vector3 bg_scale = bgTracer.transform.localScale; bg_pos.x = bg_x; bg_scale.x = bg_xSize; bgTracer.transform.localPosition = bg_pos; bgTracer.transform.localScale = bg_scale; bg.transform.position = bgTracer.transform.position; bg.transform.localScale = bgTracer.transform.localScale; infoContent.lineWidth = (int)(bg_xSize - 31); }
void OnSetSkillTypeBtnContent(UISkillTypeBtn btn) { btn.spriteName = mSkillTypeDatas[btn.index].info._icon[0]; }
void OnSkillBtnClick(UISkillTypeBtn btn) { SetActiveBtn(btn.index); }