Unity在面板上给组件添加一个按钮

通过编辑器扩展的脚本,可以给自己写的脚本以及Unity自带的脚本,在界面上添加一些调用组件中方法的按钮,以下为在Button组件上添加一个按钮,触发Button点击事件的脚本

需要注意的是,脚本需要放到一个名为Editor的文件夹中,否则会打包报错

在[CustomEditor(typeof(TaskBase),true)]中添加第二个参数 true,用于在继承自该类的子类上面也去出现按钮

using UnityEditor;
using UnityEditor.UI;
using UnityEngine;
using UnityEngine.UI;

[CustomEditor(typeof(Button))]
public class ButtonEditor : UnityEditor.UI.ButtonEditor
{
    public override void OnInspectorGUI()
    {
        base.OnInspectorGUI(); // 绘制默认UI

        EditorGUILayout.Space();
        EditorGUILayout.LabelField("功能测试", EditorStyles.boldLabel);

        // 获取当前选中的Button组件
        Button button = (Button)target;

        // 添加测试按钮
        if (GUILayout.Button("按钮点击"))
        {
            // 触发OnClick事件
            if (Application.isPlaying)
            {
                button.onClick.Invoke();
            }
            else
            {
                Debug.LogWarning("OnClick triggered in Editor mode. " +
                    "Runtime-only features may not work!");
                button.onClick.Invoke();
            }
        }
    }
}
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
AI助手
您好!我是硅基流动AI助手,请问有什么可以帮您的吗?