7.自定义常用控件-自定义文本和按钮
7.1 知识点
创建自定义文本 实现Style关和开的绘制抽象方法
//自定义文本
public class CustomGUILabel : CustomGUIControl
{
//实现Style关和开的绘制抽象方法
protected override void StyleOffDraw()
{
GUI.Label(guiPos.Pos, content);
}
protected override void StyleOnDraw()
{
GUI.Label(guiPos.Pos, content, style);
}
}
创建自定义按钮 实现Style关和开的绘制抽象方法,并添加一个事件
//自定义按钮
public class CustomGUIButton : CustomGUIControl
{
//提供给外部 用于响应 按钮点击的事件 只要在外部给予了响应函数 那就会执行
public event UnityAction clickEvent;
//实现Style关和开的绘制抽象方法
protected override void StyleOffDraw()
{
if (GUI.Button(guiPos.Pos, content))
{
clickEvent?.Invoke();
}
}
protected override void StyleOnDraw()
{
if (GUI.Button(guiPos.Pos, content, style))
{
clickEvent?.Invoke();
}
}
}
7.2 知识点代码
CustomGUIButton
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
//自定义按钮
public class CustomGUIButton : CustomGUIControl
{
//提供给外部 用于响应 按钮点击的事件 只要在外部给予了响应函数 那就会执行
public event UnityAction clickEvent;
//实现Style关和开的绘制抽象方法
protected override void StyleOffDraw()
{
if( GUI.Button(guiPos.Pos, content ) )
{
clickEvent?.Invoke();
}
}
protected override void StyleOnDraw()
{
if (GUI.Button(guiPos.Pos, content, style))
{
clickEvent?.Invoke();
}
}
}
CustomGUILabel
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//自定义文本
public class CustomGUILabel : CustomGUIControl
{
//实现Style关和开的绘制抽象方法
protected override void StyleOffDraw()
{
GUI.Label(guiPos.Pos, content);
}
protected override void StyleOnDraw()
{
GUI.Label(guiPos.Pos, content, style);
}
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com