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

高端网站设计v芯hyhyk1推好自媒体引流推广

高端网站设计v芯hyhyk1推好,自媒体引流推广,济南槐荫区做网站的,bluehost网站后台废话不多说,在Untiy中,如果想要对Button等组件进行扩展的话,那么不仅仅只需要将新增的属性设置为public或者增加SerializeField字段就行了的,同时需要对Inspector的GUI面板进行修改,以下直接展示代码: usi…

废话不多说,在Untiy中,如果想要对Button等组件进行扩展的话,那么不仅仅只需要将新增的属性设置为public或者增加SerializeField字段就行了的,同时需要对Inspector的GUI面板进行修改,以下直接展示代码:

using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.Serialization;
using UnityEngine.UI;
using UnityEditor;[CustomEditor(typeof(ButtonExtension))]
public class ButtonExtensionEditor : UnityEditor.UI.ButtonEditor    
{public override void OnInspectorGUI(){base.OnInspectorGUI();ButtonExtension myScript = (ButtonExtension)target;myScript.singleClickEnabled = GUILayout.Toggle(myScript.singleClickEnabled, "单击");//创建一个打开/关闭的开关按钮。myScript.doubleClickEnabled = GUILayout.Toggle(myScript.doubleClickEnabled, "双击");if (myScript.doubleClickEnabled){myScript.doubleClickTime = EditorGUILayout.FloatField("双击时间", myScript.doubleClickTime);}myScript.longPressEnabled = GUILayout.Toggle(myScript.longPressEnabled, "长按");if (myScript.longPressEnabled){myScript.minPressTime = EditorGUILayout.FloatField("最小按住时间", myScript.minPressTime);}base.OnInspectorGUI();}
}public class ButtonExtension : Button
{#region 单机双击相关[SerializeField]public bool singleClickEnabled = true;public bool doubleClickEnabled = false;public float doubleClickTime = 0.3f;private float lastClickTime = float.NegativeInfinity;private int clickCount = 0;[FormerlySerializedAs("onDoubleClick")][SerializeField]private ButtonClickedEvent doubleClickEvent = new ();public ButtonClickedEvent onDoubleClick{get => doubleClickEvent;set => doubleClickEvent = value;}public override void OnPointerClick(PointerEventData eventData){if(!IsActive() && !interactable) return;if (singleClickEnabled){UISystemProfilerApi.AddMarker("Button.onClick", this);onClick?.Invoke();Debug.LogError("单击");   }if (doubleClickEnabled){clickCount++;if (clickCount >= 2){if (Time.realtimeSinceStartup - lastClickTime < doubleClickTime){UISystemProfilerApi.AddMarker("Button.onDoubleClick", this);onDoubleClick?.Invoke();Debug.LogError("双击");lastClickTime = float.NegativeInfinity;clickCount = 0;   }else{clickCount = 1;lastClickTime = Time.unscaledTime;}}else{lastClickTime = Time.unscaledTime;}}}#endregion#region 长按相关public bool longPressEnabled = false;private float lastPressTime = 0;public float minPressTime = 0.5f;private bool isPressing = false;private bool hasInvokedLongPress = false;[FormerlySerializedAs("onLongPress")][SerializeField]private ButtonClickedEvent longPressEvent = new();public ButtonClickedEvent onLongPress{get => longPressEvent;set => longPressEvent = value;}public override void OnPointerDown(PointerEventData eventData){base.OnPointerDown(eventData);if (longPressEnabled){hasInvokedLongPress = false;isPressing = true;lastPressTime = Time.unscaledTime;   }}public override void OnPointerUp(PointerEventData eventData){base.OnPointerUp(eventData);isPressing = false;hasInvokedLongPress = false;}private void Update(){DealLongPress();}private void DealLongPress(){if(hasInvokedLongPress) return;if (isPressing){if (Time.unscaledTime - lastPressTime >= minPressTime){UISystemProfilerApi.AddMarker("Button.onLongPress", this);onLongPress?.Invoke();hasInvokedLongPress = true;Debug.LogError("执行长按事件");}}}#endregion
}

参考博客:Unity 编辑器-UGUI拓展Button,一个和原Button一样按钮⭐_unity editor button-CSDN博客

[Unity案例]Button的双击和长按_unity button 长按检测-CSDN博客

http://www.mmbaike.com/news/23552.html

相关文章:

  • 网站建设工单系统护语十大场景营销案例
  • 琼海商城网站建设竞价推广哪家公司好
  • 如何制作ppt课件班级优化大师的功能
  • 海外服务器加速seo站长网怎么下载
  • 第三方app下载平台优化大师优化项目有
  • wordpress 页面 文章湖北seo整站优化
  • wordpress jet插件天门seo
  • 湖南做电商网站需要什么条件今日腾讯新闻最新消息
  • seo wordpress 插件网站seo站长工具
  • 网站制作费用需要多少钱湖南平台网站建设制作
  • 城阳做网站免费推广方法
  • 做全屏式网站尺寸是多大seo工资水平
  • 二七区网站建设漳州seo建站
  • 网站SEO做点提升流量万象广告投放运营主要做什么
  • 做网站颜色黑色代码多少学生个人网页设计作品
  • 如果做游戏的技术用来做网站百度手机助手网页版
  • dedecms更改网站logociliba磁力搜索引擎
  • 荆州 商务 网站建设seo关键词排名点击工具
  • 动漫制作技术专业su搜索引擎优化
  • 网站标题关键字怎么优化网站关键词排名
  • 网站连接如何做二维码网站排名优化客服
  • 用asp制作一个简单的网站网络推广主要工作内容
  • 网站建设有关模板北京seo营销培训
  • 网站页面怎么做的好看whois查询
  • 做个支付网站多少钱设计网站官网
  • 大庆市萨尔图区建设局网站今日新闻头条10条
  • pb代做网站工具seo
  • 搭建企业网站软文营销
  • 西宁做网站需要多少钱自助建站模板
  • 广西省住房和城乡建设厅官方网站搜索引擎优化seo课程总结