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

防火门 东莞网站建设乐高设计师网

防火门 东莞网站建设,乐高设计师网,国内云服务器免费,wap网站制作软件一、事件监听接口 1、作用 用于实现类型长按、双击、拖拽等基础控件无法实现的功能 所有控件都能够添加更多的事件监听来处理对应的逻辑 2、事件监听接口类型 (1)常用事件接口 (2)不常用事件接口 3、使用事件监听接口 &#…

一、事件监听接口

1、作用

用于实现类型长按、双击、拖拽等基础控件无法实现的功能
所有控件都能够添加更多的事件监听来处理对应的逻辑

2、事件监听接口类型

(1)常用事件接口

在这里插入图片描述

(2)不常用事件接口

在这里插入图片描述

3、使用事件监听接口

(1)使用方法

a、引用命名控件using UnityEngine.EventSystems;
b、继承接口
c、实现接口中的内容
d、将该脚本挂载到想要监听自定义事件的UI控件上

(2)具体实现例子

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;public class L8 : MonoBehaviour,IPointerEnterHandler,IPointerExitHandler,IPointerDownHandler,IPointerUpHandler
{public void OnPointerEnter(PointerEventData eventData){print("鼠标进入");}public void OnPointerExit(PointerEventData eventData){print("鼠标离开");}public void OnPointerUp(PointerEventData eventData){print("鼠标抬起");}public void OnPointerDown(PointerEventData eventData){print("鼠标按下");}
}

4、PointerEventData参数的关键内容

在这里插入图片描述

5、总结

(1)好处

可以实现一些长按、双击拖拽等功能

(2)坏处

不方便管理,需要自己写脚本继承接口挂载到对应控件上,比较麻烦

二、事件触发器

1、作用

EventTrigger,集成了所有事件接口的脚本,可以更加方便地位控件添加事件监听

2、如何使用事件触发器

(1)拖拽脚本进行关联

在这里插入图片描述
在这里插入图片描述

(2)使用代码进行添加关联

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;public class EnvTrigger : MonoBehaviour
{public EventTrigger envTrigger;// Start is called before the first frame updatevoid Start(){//声明一个希望监听的事件对象EventTrigger.Entry entry = new EventTrigger.Entry();//声明 事件的类型entry.eventID = EventTriggerType.PointerDown;//监听函数关联entry.callback.AddListener((data) =>{print("鼠标按下" + "  " + data);});//将声明好的事件对象 加入到EventTrigger中envTrigger.triggers.Add(entry);}
}

3、总结

EventTrigger可以让我们写更少的代码,可以在面板类中处理面部控制的事件逻辑,更加的面向对象,便于管理

三、屏幕坐标转UI坐标

1、RectTransformUtility类

RectTransformUtility类,是RectTransform的辅助类
主要用于进行一些坐标的转换
其中最重要的函数就是将屏幕控件上的点,转换成UI本地坐标下的点

2、将屏幕坐标转换成UI本地坐标系下的点

(1)方法

RectTransformUtility.ScreenPointToLocalPointInRectangle(参数一,参数二,参数三,参数四)
参数一:相对父对象
参数二:屏幕点
参数三:摄像机
参数四:最终得到的点
一般配合拖拽事件使用

public void OnDrag(PointerEventData eventData){Vector2 UIposition;RectTransformUtility.ScreenPointToLocalPointInRectangle(this.transform.parent as RectTransform,eventData.position,eventData.pressEventCamera,out UIposition);this.transform.localPosition = UIposition;print("屏幕坐标" + eventData.position);print("UI坐标" + UIposition);}

四、遮罩

1、作用

在不改变图片的情况下,让图片在游戏中只显示其中一部分

2、使用方法

(1)关键组件 Mask

实现遮罩效果需要添加Mask组件
通过在父对象上添加Mask组件即可遮罩其子对象

(2)注意点

想要被遮罩的Image需要勾选Maskable
只要父对象添加了Mask组件,那么所有的UI子对象都会被遮罩
遮罩父对象图片的制作,不透明的地方显示,透明的地方被遮罩

五、模型和粒子显示在UI之前

1、模型显示在UI之前

(1)方法一:直接用摄像机渲染3D物体

Canvas的渲染模式不能是覆盖模式
摄像机模式和世界模式都可以让模型显示在UI之前(Z轴元素在UI元素之前即可)
注意点:
摄像机模式时建议用专门的摄像机渲染UI相关
面板上的3D物体建议也用UI摄像机进行渲染

(2)方法二:将3D物体渲染在图片上,通过图片显示

专门使用一个摄像机渲染3D模型,将其渲染内容输出到Render Texture上
类似小地图的制作方式
再将渲染的图显示在UI
该方式,不管Canvas的渲染模型是哪种都可以使用

2、粒子特效显示在UI之前

粒子特效的显示和3D物体类似
注意点:
在摄像模式下时,可以在粒子组件的Renderer相关参数Order in Layer中改变排序层,让粒子特效始终显示在其之前不受z轴影响

六、异形按钮

1、什么是异形按钮

图片形状不是传统矩形的按钮

2、如何让异形按钮能够准确点击

(1)通过添加子对象的形式

在这里插入图片描述
增加多个透明子对象,将透明子对象拼凑出异形形状,从而实现异形按钮

(2)通过代码改变图片的透明度相应阈值

在这里插入图片描述

	public Image image;// Start is called before the first frame updatevoid Start(){image.alphaHitTestMinimumThreshold = 0.1f;}

七、CanvasGroup

1、作用

实现整体控制一个面板的淡入淡出或者整体禁用

2、主要属性

在这里插入图片描述
在这里插入图片描述

http://www.yayakq.cn/news/287304/

相关文章:

  • 网站源码修改后怎么提交wordpress文章标题字体大小
  • 自己搭建网站怎么搭建网站编程好学吗
  • wordpress搭建的博客系统前端性能优化有哪些方法
  • 只做app不做网站可以吗怎么请人做网站
  • 企业移动网站建设.net网站建设
  • 宁波市海曙区建设局网站服装网站建设报关
  • 自己的网站单位网站建设汇报材料
  • 软件开发的三个阶段成都外贸seo
  • 网站服务器和网站备案烟台seo推广优化
  • qq刷赞网站如何做分站男女做污的事情网站视频
  • 泰州网站建设报价做网站公司做网站公司
  • 商丘市住房和城乡建设厅网站怎样建立自己的网站平台
  • 创新的福州网站建设湖南纯手工seo电话
  • 集团公司网站设计建筑模板工
  • 淮北工程建设公司湖南网站seo地址
  • 深圳龙华大浪做网站公司wordpress文章模板下载
  • 网站重构怎么做江苏天宇建设集团有限公司网站
  • 网站建设营销话术杭州开发区建设局网站
  • 机械网站建设哪家好云服务器可以做图片外链网站吗
  • 石桥铺做网站新网站建设的感想
  • 惠济郑州网站建设wordpress yootheme
  • 从信息化建设办公室网站wordpress添加自定义导航栏
  • 一键建设网站网页图片显示不出来
  • 高端品牌网站建设费用西安免费平台网站建设
  • 升级网站天津网络网站公司
  • 企业网站开发需求wordpress短代码转php
  • 企业网站的必要性广告设计与制作专业需要艺考吗
  • 网站建设属于哪个分类编码桂林漓江风景图片
  • 设计网站一般要多少钱网站上的网站地图怎么做
  • 网站建设com河南郑州暴雨伤亡