- Odin Inspector 系列教程 --- Required
- Odin Inspector 系列教程 --- 自定义Odin序
- Odin Inspector 系列教程 --- Odin Sta
- Odin Inspector 系列教程 --- RoadMap(
- Odin Inspector 系列教程 --- Foldout
- Odin Inspector 系列教程 --- Vertical
- Odin Inspector 系列教程 --- Responsi
- Odin Inspector 系列教程 --- Preview
- Odin Inspector 系列教程 --- Horizont
- Odin Inspector 系列教程 --- Show If
Required Attribute特性:用于任何对象属性,如果对应属性没有赋值,则在检查器中出现对应的提示消息。

直接添加特性

[Required]
public GameObject MyGameObject;
也可以自定义消息

[Required("自定义错误消息.")]
public Rigidbody MyRigidbody;
当然可以使用$关键字使用动态消息

public string DynamicMessage = "Dynamic Message";
[Required("$DynamicMessage")]
public GameObject GameObject_DynamicMessage;
[Required("$ReturnStringFunction")]
public GameObject GameObject_DynamicMessage1;
public string ReturnStringFunction()
{
return "菜鸟海澜";
}
也可以显示不同的消息类型,但是None和Info不显示,目前不知道就是这么设定的还是BUG?、

[Required("$DynamicMessage", InfoMessageType.None)]
public GameObject GameObject_None;
[Required("$DynamicMessage", InfoMessageType.Info)]
public GameObject GameObject_Info;
[Required("$DynamicMessage", InfoMessageType.Warning)]
public GameObject GameObject_Warning;
[Required("$DynamicMessage",InfoMessageType.Error)]
public GameObject GameObject_Error;
完整示例代码
using Sirenix.OdinInspector;
using UnityEngine;
public class RequiredExample : MonoBehaviour
{
[Required]
public GameObject MyGameObject;
[Required("自定义错误消息.")]
public Rigidbody MyRigidbody;
public string DynamicMessage = "Dynamic Message";
[Required("$DynamicMessage")]
public GameObject GameObject_DynamicMessage;
[Required("$ReturnStringFunction")]
public GameObject GameObject_DynamicMessage1;
public string ReturnStringFunction()
{
return "菜鸟海澜";
}
[Required("$DynamicMessage", InfoMessageType.None)]
public GameObject GameObject_None;
[Required("$DynamicMessage", InfoMessageType.Info)]
public GameObject GameObject_Info;
[Required("$DynamicMessage", InfoMessageType.Warning)]
public GameObject GameObject_Warning;
[Required("$DynamicMessage",InfoMessageType.Error)]
public GameObject GameObject_Error;
}
网友评论