7.自定义文本和按钮

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

×

喜欢就点赞,疼爱就打赏