[Unity][优化]Esc按键快速隐藏背包UI

有的时候,打开的UI过多,需要快捷的隐藏 背包UI的操作。

 



    /// 
    /// esc按键,默认esc。
    /// 
    private KeyCode esc = KeyCode.Escape;

    /// 
    /// 用于存放 ESC 按键,列表
    /// 
    private List esc_list = new List();


    /// 
    /// 背包按键 的背包UI
    /// 
    [SerializeField]
    private InventoryUI inventoryUI;



    // Update is called once per frame
    void Update () {


        if (Input.GetButtonDown("Inventory")//KeyCode.I
            && inventoryUI!=null)
        {
            inventoryUI.UpdateUI();
            esc_list.Add(inventoryUI.inventoryUI.transform);
        }



        if (Input.GetKeyDown(esc)//当按下 ESCAPE 按键,快速隐藏 UI
            && esc_list.Count >0)
        {
            #region esc按键函数
            esc_list[esc_list.Count - 1].gameObject.SetActive(false);
            esc_list.Remove(esc_list[esc_list.Count - 1]);
            #endregion
        }


    }

隐藏 UI的几种方式

UIPlane.gameObject.SetActive(!UIPlane.activeSelf);

UIPlane.transform.localscale = new Vectore(0,0,0);

 

 

 

 

你可能感兴趣的:(优化,Unity)