Unity编辑器----MenuItem给方法加执行按钮

(一)整体印象及概念

1、应用示意

    [MenuItem("显示图片/ShowPic")]
    public static void ShowSprite()
    {
        //找到隐藏图片的父物体
        Transform spriteFarther = GameObject.Find("SpriteFarther").transform;
        //进而找到隐藏图片,把该图片显示
        spriteFarther.Find("New Sprite").gameObject.SetActive(true);
    }
2、解释上面

[MenuItem]标签
它的作用是,在Unity引擎菜单栏生成一个新菜单(“显示图片”),新菜单下带一个按钮(“ShowPic”),点击会执行其修饰的静态方法。

(二)具体过程

1、工程结构

新建代码,
     如果保持默认——:MonoBehaviour,可放在层级视图,任意处于显示状态的物体上;
     如果不想继承MonoBehaviour——去掉继承关系:MonoBehaviour即可,这样后,就不需要往层级视图物体上拖了。
在这里插入图片描述

2、代码
using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;

public class TestAB : MonoBehaviour
{
    
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        
    }
    [MenuItem("显示图片/ShowPic")]
    public static void ShowSprite()
    {
        Transform spriteFarther = GameObject.Find("SpriteFarther").transform;

        spriteFarther.Find("New Sprite").gameObject.SetActive(true);
    }
    //[MenuItem("隐藏图片/HidePic")]
    //public static void HideSprite()
    //{
    //    Transform spriteFarther = GameObject.Find("SpriteFarther").transform;

    //    spriteFarther.Find("New Sprite").gameObject.SetActive(false);
    //}
}

3、效果

在这里插入图片描述

(三)注意

1、必须放置静态方法前(对普通方法无效)。
2、它紧跟的括号内必须是两层内容,第一层表示菜单,第二层是具体按钮(如果只写一层,会报错)。
3、需引入using UnityEditor 命名空间

(四)总结

Unity编辑器——点击[MenuItem]添加的菜单按钮,执行其修饰的静态方法

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值