UGUI 按钮事件案例
来源:互联网 发布:悍将传世源码 编辑:程序博客网 时间:2024/06/04 23:23
UGUI 点击按钮切换图片案例:
主要方法:动态为按钮注册方法
通过方法获取点击按钮名称(知道那个按钮被点击)
切换图片的方法
代码挂到Canvas(画布)上:并且拖拽为公开属性赋值
左边的按钮点击事件,使用了代码动态赋值,,
右边按钮可以同步操作,我这里使用属性面板赋值了,,步骤(点击加号,把挂载代码的游戏物体拖拽赋值,然后右面的方法选择自己写的方法名,,,点击按钮的时候方法就会执行了)
编写如下代码:即可实现点击按钮图片顺序切换
using UnityEngine;using UnityEngine.EventSystems;using UnityEngine.UI;public class SwapImage : MonoBehaviour { public Image bgimage; //默认显示的背景图片 (注意类型) public Sprite[] imagearr; //要切换的图片数组 private string btn_name; //点击的按钮名称 private int i=0; //图片数组的索引 public Button btn_left; //声明左面按钮 void Start() { //找到左边按钮并且获取其身上组件 btn_left = this.gameObject.transform.Find("Button_Left").GetComponent<Button>(); //为onclick注册方法 btn_left.onClick.AddListener(Swap); } //注册到按钮上的切换图片的方法 public void Swap() { //获取点击按钮的名称 btn_name = EventSystem.current.currentSelectedGameObject.name; if (btn_name == "Button_Left") //点击名称为Button_Left的按钮 { //如果当前图片是图片数组的第一张,就切换到最后一张 if (i < 0) { i = imagearr.Length - 1; } //切换图片 bgimage.overrideSprite = imagearr[i--]; //Debug.Log(i); } else //点击名称为Button_Right的按钮 { if (i > imagearr.Length - 1) {i = 0; } //切换图片 bgimage.overrideSprite = imagearr[i++]; } }}//-------------另一种方式-----------------------using UnityEngine;using UnityEngine.UI;public class UIShopping : MonoBehaviour { //需要更换的图片 public Image Hero; //英雄图片数组 public Sprite[] imagearr; //图片数组的索引 private int i; //声明按钮引用 public Button btn_left; public Button btn_right; // Use this for initialization void Start () { //找到左边按钮并且获取其身上组件 btn_left = GameObject.Find("Left_Btn").GetComponent<Button>(); //为onclick注册方法 btn_left.onClick.AddListener(SwapLeft); //右面同理 btn_right = GameObject.Find("Right_Btn").GetComponent<Button>(); btn_right.onClick.AddListener(SwapRight); } public void SwapLeft() { //如果当前图片是图片数组的第一张,就切换到最后一张 if (i < 0) { i = imagearr.Length - 1; } //切换图片 Hero.overrideSprite = imagearr[i--]; } public void SwapRight() { if (i > imagearr.Length - 1) { i = 0; } //切换图片 Hero.overrideSprite = imagearr[i++]; }}
阅读全文
1 0
- UGUI 按钮事件案例
- UGUI 按钮监听事件
- UGUI 按钮On Click事件
- UGUI的按钮监听事件
- UGUI 按钮的监听事件系统
- Unity3D UGUI按钮长按事件
- Unity3D的ugui之按钮事件
- Unity UGUI按钮动态添加点击事件
- Unity UGUI 按钮绑定事件的方式
- UGUI的按钮监听事件系统
- unity 按钮绑定事件(NGUI UGUI)
- UGUI控件之按钮的监听事件系统
- unity UGUI按钮绑定事件的四种方法
- 【UGUI】Unity4.6 UI按钮绑定事件(一)
- 【UGUI】Unity4.6 UI按钮绑定事件(二)
- 【UGUI】Unity4.6 UI按钮绑定事件(三)
- 【UGUI】Unity4.6 UI按钮绑定事件(四)
- Unity中UGUI脚本添加Button按钮事件
- JS回调函数中无法改变外部变量的问题
- 关于C++构造与析构函数
- 【LeetCode】27. Remove Element
- JAVA工具类(12)---文本字符串工具类(数据替换,加密解密操作)
- 正则表达式 元字符
- UGUI 按钮事件案例
- python list sorted
- 在函数调用值传递问题
- 【HPU】1392 分隔A+B
- 关于AI方面创业公司的分析
- Java软件开发,是自学的好还是参加java培训机构?
- 20170910_拼凑钱币_DP
- 利用Wireshark任意获取QQ好友IP实施精准定位
- 关于时间转换-----angularjs