예제 #1
0
 /// <summary>
 /// 热键可用性改变时
 /// </summary>
 /// <param name="id">id</param>
 /// <param name="isHold">是否为长按键</param>
 /// <param name="enabled">是否可用</param>
 private void OnHotkeyEnabledChanged(string id, bool enabled)
 {
     if (OwnerView != null)
     {
         OwnerView.SetHotKeyEnabled(id, enabled);
     }
 }
예제 #2
0
    /// <summary>
    /// 删除所有热键
    /// </summary>
    private void RemoveAllHotkeyElement()
    {
        if (OwnerView != null)
        {
            foreach (string id in m_HotKeyIDs)
            {
                OwnerView.SetHotKeyEnabled(id, false);
                OwnerView.DeleteHotKey(id);
            }
        }

        m_HotKeyIDs.Clear();
    }
예제 #3
0
    /// <summary>
    /// 更新单个热键
    /// </summary>
    /// <param name="key"></param>
    private void UpdateHotkeyElement(UIViewAction key)
    {
        if (key.State < 0 || key.State >= key.StateList.Count)
        {
            return;
        }

        Transform outer  = OwnerView.State.GetActionBox();
        Transform parent = outer ? outer : FindComponent <Transform>("Content/HotkeyBox");

        UIViewActionState keyState = key.StateList[key.State];

        OwnerView.AddHotKey(key.ID, keyState.Hotkey, (callback) => { key.FireEvent(callback); }, keyState.Time, parent, keyState.Text);
        OwnerView.SetHotKeyVisible(key.ID, key.Visible);
        OwnerView.SetHotKeyEnabled(key.ID, key.Enabled);
        OwnerView.SetHotKeyDescription(key.ID, keyState.Text);
    }