Unity Editor添加菜单栏勾选状态

效果

代码实现

using UnityEngine;
using UnityEditor;

public static class VersionTool
{
    //Set CheckMark
    [MenuItem("Platform/Editor", true)]
    public static bool CheckPlatform()
    {
        string platform = EditorPrefs.GetString("platform", "_Editor_Platform");
        Menu.SetChecked("Platform/PC", platform == "_PC_Platform");
        Menu.SetChecked("Platform/IOS", platform == "_IOS_Platform");
        Menu.SetChecked("Platform/Android", platform == "_Android_Platform");
        Menu.SetChecked("Platform/Editor", platform == "_Editor_Platform");
        Debug.LogError("CheckPlatform");
        return true;
    }

    //Switch Platform
    [MenuItem("Platform/Editor")]
    public static void SwitchToEditorResource()
    {
        SwitchToTargetResource("_Editor_Platform");
    }

    [MenuItem("Platform/PC")]
    public static void SwitchToPCResource()
    {
        SwitchToTargetResource("_PC_Platform");
    }

    [MenuItem("Platform/IOS")]
    public static void SwitchToIOSResource()
    {
        SwitchToTargetResource("_IOS_Platform");
    }

    [MenuItem("Platform/Android")]
    public static void SwitchToAndroidResource()
    {
        SwitchToTargetResource("_Android_Platform");
    }

    private static void SwitchToTargetResource(string targetKeyword)
    {
            EditorPrefs.SetString("platform", targetKeyword);
    }
}

备注

 EditorPrefs是一个用于编辑器保存数据的类,这样我们的设置即使在关闭编辑器以后也不会重置~


EditorPrefs.SetString("platform", "对应字符串");
string platform = EditorPrefs.GetString("platform", "默认字符串");

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值