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;
            }
        }
    }
    

      

  • 相关阅读:
    Android Studio 配置Gradle总结
    ion-icon
    Centos 7下利用crontab定时执行任务详解
    Centos7 下安装以及使用mssql
    Docker容器
    linux centos7--linux和window共享文件(samba)
    一些CMS网站系统漏洞,练手用(持续更新)
    相应的游戏服务器组件信息不存在,房间创建失败
    [Windows] php开发工具,zendstudio13使用方法补丁
    mysql sql语句大全
  • 原文地址:https://www.cnblogs.com/allyh/p/11456377.html
Copyright © 2011-2022 走看看