Unity——UI的交互

UI的事件交互必须存在EventSystem交互事件系统

Unity——UI的交互_第1张图片

Canvas的射线发射器

Unity——UI的交互_第2张图片

 

                :是否忽略反向的射线操作

Unity——UI的交互_第3张图片

                 2d或者3d还是所有的物体会遮挡这个事件

Unity——UI的交互_第4张图片

                 遮挡事件的物体所在的渲染层

Unity——UI的交互_第5张图片

 

                        是否接收Canvas的射线

如果要一个没有多余边框的范围可以将button旋转如果将图片改为透明来实现 

Unity——UI的交互_第6张图片

Button 组件

 Unity——UI的交互_第7张图片

                是否可以进行交互 

Unity——UI的交互_第8张图片

                交互效果:

                        None 没有交互效果 

                        Color Tint 颜色的变化

Unity——UI的交互_第9张图片

                         Sprite Swap 图片的切换 

Unity——UI的交互_第10张图片

 Unity——UI的交互_第11张图片

                 是否开启键盘导航功能

回调

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;

public class 回调 : MonoBehaviour
{
    //声明一个委托
    public UnityAction Callback;

   
    void Start()
    {
        //指定委托
        Callback = Success;
        for(int i = 0;i < 10; i++)
        {
            Debug.Log(1);
        }

        //调用委托
        Callback();
    }

    
    //Success方法
    public void Success()
    {
        Debug.Log("Success");
    }

}

Unity——UI的交互_第12张图片

按钮触发事件

        1.编写好要触发的函数 ,且放在任意一个游戏物体上

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ButtonAttack : MonoBehaviour
{
   public void Buttonattack()
    {
        Debug.Log("1234");
    }
}

        2.点击添加按下事件

Unity——UI的交互_第13张图片

         3.将游戏物体拖入,并且指定方法

Unity——UI的交互_第14张图片

 

自动添加按下事件

    /// 
    /// 自动添加按钮事件
    /// 
    void Start()
    {
        //先获取要添加的位置
        GameObject sub = GameObject.Find("/Canvas/Sumbit");
        //获取button组件
        Button button = sub.GetComponent

Toggle组件

Unity——UI的交互_第15张图片

 

                组 

实现单选

        1.先创建一个空物体,然后添加Toggle Group

                Unity——UI的交互_第16张图片

         2.将当选框添加到一个组

        ​​​​​​​        

 

        是否允许将每一个选项都关掉 

        Slider组件

Unity——UI的交互_第17张图片

        使用Slider控制音量

                1.先将游戏物体添加声音组件(Audio Source)

Unity——UI的交互_第18张图片

         2.编写控制声音的脚本,并且放在和声音组件的一个游戏物体上

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ChangerSlider : MonoBehaviour
{
   public void changeSlider(float v)
    {
        //获得slider传入的值,并且把这个值给音量
        this.gameObject.GetComponent().volume = v;
    }
}

        3.对Slider组件进行指定

Unity——UI的交互_第19张图片

Input File组件

Unity——UI的交互_第20张图片

InputField事件

Unity——UI的交互_第21张图片

        当文本 框输入的内容改变时,执行回调函数

        当文本框结束输入时,执行回调函数

public class InputText : MonoBehaviour
{
   public void OnChage(string name)
    {
        Debug.Log("Change:" + name);
    }

    public void OnEnd(string name)
    {
        Debug.Log("End:" + name);
    }
}

Unity——UI的交互_第22张图片

你可能感兴趣的:(unity,unity,c#)