zoukankan      html  css  js  c++  java
  • Unity引擎的按钮Button代码笔记

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.UI;
    
    /// <summary>
    /// 
    /// </summary>
    public class EventBtn : MonoBehaviour {
        public Transform PanelBg;
        public Button UpBtn;
        public Button DownBtn;
        private float PanelHeight; 
        //public  Transform  ControlPanel;
        void Awake()
        {
            PanelHeight = PanelBg.GetComponent<Collider>().bounds.size.y;
           Debug.Log(PanelHeight);
        }
        void Start () {
             
    	}  
    	void Update () {
            UpBtn.onClick.AddListener(delegate ()
            {
                this.OnClickEvent(true);
            });
            DownBtn.onClick.AddListener(delegate ()
            {
                this.OnClickEvent(false);
            });
        }
        public void UpBtnEvent()
        {
            UpBtn.transform.localScale = Vector3.zero;
            Vector3 newPos = new Vector3(transform.position.x, transform.position.y + PanelHeight, transform.position.z);
            PanelBg.transform.position = Vector3.Slerp(transform.position, newPos, 3);
            DownBtn.transform.localScale = Vector3.one;
        }
        public void DownBtnEvent()
        {
            DownBtn.transform.localScale = Vector3.zero;
            Vector3 newPos = new Vector3(transform.position.x, transform.position.y - PanelHeight, transform.position.z);
            PanelBg.transform.position = Vector3.Slerp(transform.position, newPos, 3);
            UpBtn.transform.localScale = Vector3.one; 
        }
        public void OnClickEvent(bool trueOrFalse)
        {
            switch (trueOrFalse)
            {
                case true:
                    UpBtn.transform.localScale = Vector3.zero;
                    Vector3 newPos = new Vector3(transform.position.x, transform.position.y + PanelHeight, transform.position.z);
                    PanelBg.transform.position = Vector3.Slerp(transform.position, newPos, 3);
                    DownBtn.transform.localScale = Vector3.one;
                    break;
                case false:
                    DownBtn.transform.localScale = Vector3.zero;
                    Vector3 newPos0 = new Vector3(transform.position.x, transform.position.y - PanelHeight, transform.position.z);
                    PanelBg.transform.position = Vector3.Slerp(transform.position, newPos0, 3);
                    UpBtn.transform.localScale = Vector3.one;
                    break;
            }
        }
    }
    

      

  • 相关阅读:
    程序=算法+数据结构 的理解
    为什么有些语言可以被反编译?而有的不能?
    手机怎么访问电脑服务器上的网页
    linux一键安装
    Linux初学者必知的5个学习网站
    忘记阿里云管理终端密码怎么办
    Linux学习(CentOS-7)---磁盘分区(概念、分区方法、分区方案)
    远程桌面怎样复制本地文件听语音
    如何查看某个端口被谁占用
    cmd命令
  • 原文地址:https://www.cnblogs.com/allyh/p/11456377.html
Copyright © 2011-2022 走看看