当前位置: 首页 > news >正文

新宫网站建设公司长清网站建设费用

新宫网站建设公司,长清网站建设费用,商标查询入口官网,成都房地产开发商排名先看效果#xff08;主要实现点击按钮切换图片#xff0c;未解锁按钮弹出提示#xff0c;点击过后播放动画#xff09; 预备知识#xff08;单例模式#xff0c;携程#xff0c; Resources.Load加载资源的方式#xff09; 资源准备#xff08;底部按钮7个图标#x…先看效果主要实现点击按钮切换图片未解锁按钮弹出提示点击过后播放动画 预备知识单例模式携程 Resources.Load加载资源的方式 资源准备底部按钮7个图标1920*1080的图片7个  1.场景搭建创建4个空对象并修改名字创建Resources文件夹并在其中创建4个子文件夹并把准备的资源放到里面去 2.创建一个画布并将这两个空对象LayerRootBottom拖到画布中并设置位置 3.设置画布的缩放模式设置缩放模式并调整分辨率为1920*1080 4.制作界面在LayerRoot中创建一个图片Image)并修改名字为“界面1”将准备的图片拖到图片的原图像中然后设置图片的原生大小 最后得到这样一张效果图 5.用同样的方法制作界面2-7并将它们拖到Layers文件夹中做成预制体 6.给Bottom和LayerRoot添加RectTransform组件 7.删除多余的界面然后设置Bottom的锚点为底部这样是为了适应不同分辨率的屏幕 8.界面搭建 9.制作提示预制体并拖到Tips文件夹中 10.创建脚本文件夹并编写3个脚本ClickTextTipsMageUIManage控制点击的脚本提示管理器界面管理器 TipsMage using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;public class TipsMage : MonoBehaviour {//单例模式public static TipsMage Instance;void Start(){if (Instance null){Instance this;}else{Destroy(gameObject);}}public void ShowTips(string titel , string content){ //利用Resources.Load加载预制体GameObject tips Resources.Load(Tips/Tips) as GameObject;//实例化预制体GameObject tipobj Instantiate(tips);//设置tips的标题和内容tipobj.transform.Find(Tips_box/titel).GetComponentText().text titel;tipobj.transform.Find(Tips_box/content).GetComponentText().text content;//找到装提示的容器GameObject UiLayer GameObject.Find(LayerRoot);//将提示添加到容器中tipobj.transform.SetParent(UiLayer.transform);tipobj.transform.position UiLayer.transform.position;//一段时间后销毁提示Destroy(tipobj, 2f);} }UIManage using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI;public class UIManage : MonoBehaviour {//单例模式public static UIManage Instance;//放置所有UI的根节点private Transform _uiLayerRoot;//存放已经打开过的UIprivate ListGameObject _openedUI new ListGameObject();//上一个打开的UIprivate string _lastOpenUIname;private void Awake(){if (Instance null){Instance this;}else{Destroy(gameObject);}_uiLayerRootGameObject.Find(LayerRoot).transform;_lastOpenUIname Layers/icom1;_openedUI.Add(GameObject.Find(Layers/icom1));}//打开单个public void Openlayer(string layerName){//查找之前是否打开过GameObject openedLayer _openedUI.Find(item item.name layerName);if (openedLayer null layerName!){Closelayer(_lastOpenUIname);GameObject newLayer Resources.Load(layerName) as GameObject;GameObject layerInstance Instantiate(newLayer, _uiLayerRoot.position, Quaternion.identity);_openedUI.Add(layerInstance);layerInstance.name layerName;layerInstance.transform.SetParent(_uiLayerRoot);_lastOpenUInamelayerName;}else if (openedLayer.activeSelf false){GameObject layer _openedUI.Find(item item.name layerName);if (layer ! null){layer.SetActive( true);}Closelayer(_lastOpenUIname);_lastOpenUIname layerName;}}//关闭单个public void Closelayer(string layerName){GameObject layer _openedUI.Find(item item.name layerName);if (layer! null){layer.SetActive(false);}}//关闭所有public void CloseAll(){foreach (GameObject ui in _openedUI){ui.SetActive(false);}} }ClickText using System.Collections; using UnityEngine; using UnityEngine.UI;public class ClickText : MonoBehaviour {// 显示的界面名字public string OpenLayerName;// 控制动画的携程Coroutine JumpControllercont;// 静态变量来跟踪当前正在播放动画的协程private static ClickText currentAnimatedButton;void Start(){gameObject.GetComponentButton().onClick.AddListener(() {if (OpenLayerName ){TipsMage.Instance.ShowTips(友好提示, 你还没有设置显示的界面);}else{// 如果有其他按钮正在播放动画停止它的协程if (currentAnimatedButton ! null currentAnimatedButton ! this){currentAnimatedButton.StopCoroutine(currentAnimatedButton.JumpControllercont);currentAnimatedButton.gameObject.transform.Find(icom).GetComponentRectTransform().localPosition new Vector3(0, 0, 0);}UIManage.Instance.Openlayer(OpenLayerName);if (JumpControllercont null || currentAnimatedButton ! this){JumpControllercont StartCoroutine(JumpController());// 设置当前播放动画的按钮为这个按钮currentAnimatedButton this;}}});//设置默认点击按钮if (gameObject.name Option1){gameObject.GetComponentButton().onClick.Invoke();}}IEnumerator JumpController(){while (true){gameObject.transform.Find(icom).GetComponentRectTransform().localPosition new Vector3(0, 100, 0);yield return new WaitForSeconds(0.5f);gameObject.transform.Find(icom).GetComponentRectTransform().localPosition new Vector3(0, 0, 0);yield return new WaitForSeconds(0.5f);}} }11.先将提示管理器和界面管理器拖到对应的空对象上 12.给所有的白色方块先添加按钮组件再添加 刚刚编写的脚本 13.在这里设置你点击按钮后想要打开的界面Layers文件夹的名字/界面的名字 如果不设置点击名字那么就是弹出刚刚设置的提示框 基本信息代码里面都写了注释资源包链接 GitHub - laozhupeiqia/Princess-Connect-
http://www.pierceye.com/news/54631/

相关文章:

  • 企业建站报价wordpress分页跳转首页
  • 香洲网站建设wordpress文章外链
  • 低价服装网站建设wordpress分类404
  • 做薪酬调查有哪些网站wordpress大学攻击
  • 远憬建站不同网站建设特点
  • 什么软件做网站比较好40万用户自助建站
  • 长沙网站模板建设wordpress+typecho
  • 口碑好的专业网站建设微信公众号api接口大全
  • 网站增加外链的方法有哪些创建app与网站的区别
  • 做网站的出路wordpress狮子歌歌
  • 做网站怎么移动图片杭州品牌网站制作
  • 西樵网站制作电商网站规划论文
  • 个人网站的订单摄影照片投稿网站
  • 网站建设业务介绍刷q币网站建设
  • 做教务网站的需求分析东阿网站建设
  • 专门做拼花网站品牌包装建设网站
  • 用模板建商城购物网站便利的龙岗网站设计
  • 深圳做网站推荐哪家公司好安卓软件下载安装
  • 上海网站制作商东莞关键词优化外包
  • 营销型企业网站建设方案做品牌断码的网站
  • 网站的建设方法包括网站建设与维护招聘条件
  • 太原网站seo服务apache 网站建设
  • 网站标题图片怎么做百度用户服务中心人工电话
  • 小程序定制开发团队长沙网站seo服务
  • 免费做网站的平台windows优化大师好吗
  • 浙江建设干部学校网站首页wordpress 发表评论
  • html设计素材网站淘宝不能发布网站开发了
  • 滨州做企业网站微信怎么搞小程序
  • 口岸地区网站建设内容wordpress本地运行环境
  • 淘客网站免费开源源码中国seo