public void SetSprite(UIInteractableType uIInteractableType, KeyValuePair <Sprite, Color> _sprite)
    {
        switch (uIInteractableType)
        {
        case UIInteractableType.normalSprite:
            m_normalSprite = _sprite.Key;
            m_normalColor  = _sprite.Value;
            break;

        case UIInteractableType.hoverSprite:
            m_hoverSprite = _sprite.Key;
            m_hoverColor  = _sprite.Value;
            break;

        case UIInteractableType.selectSprite:
            m_pressSprite = _sprite.Key;
            m_pressColor  = _sprite.Value;
            break;

        case UIInteractableType.disableSprite:
            m_freezeSprite = _sprite.Key;
            m_freezeColor  = _sprite.Value;
            break;

        default:
            break;
        }
    }
    public void SetUIInteractableType(UIInteractableType uIInteractableType)
    {
        switch (uIInteractableType)
        {
        case UIInteractableType.normalSprite:
            m_image.sprite = m_normalSprite;
            isSelect       = false;
            isInteractable = true;
            break;

        case UIInteractableType.hoverSprite:
            m_image.sprite = m_hoverSprite;
            isInteractable = true;
            break;

        case UIInteractableType.selectSprite:
            m_image.sprite = m_pressSprite;
            isSelect       = true;
            isInteractable = true;
            break;

        case UIInteractableType.disableSprite:
            m_image.sprite = m_freezeSprite;
            isSelect       = false;
            isInteractable = false;
            break;

        default:
            break;
        }
    }
    public KeyValuePair <Sprite, Color> GetSprite(UIInteractableType uIInteractableType)
    {
        switch (uIInteractableType)
        {
        case UIInteractableType.normalSprite:
            return(new KeyValuePair <Sprite, Color>(m_normalSprite, m_normalColor));

            break;

        case UIInteractableType.hoverSprite:
            return(new KeyValuePair <Sprite, Color>(m_hoverSprite, m_hoverColor));

            break;

        case UIInteractableType.selectSprite:
            return(new KeyValuePair <Sprite, Color>(m_pressSprite, m_pressColor));

            break;

        case UIInteractableType.disableSprite:
            return(new KeyValuePair <Sprite, Color>(m_freezeSprite, m_freezeColor));

            break;

        default:
            return(new KeyValuePair <Sprite, Color>(null, Color.clear));

            break;
        }
    }