獲取枚舉長度
Enum.GetValues(typeof(yourEnums)).Length;
枚舉的循環選擇
YourEnums _yourEnums;
public YourEnums _YourEnum
{
get
{
return _yourEnums;
}
set
{
int len = Enum.GetValues(typeof(YourEnums)).Length;
_yourEnums = (YourEnums)Enum.ToObject(typeof(YourEnums), Mathf.Clamp(value.GetHashCode(), 0, len));
if (value.GetHashCode() == -1)
{
_yourEnums = (YourEnums)Enum.ToObject(typeof(YourEnums), len - 1);
}
else if (value.GetHashCode() == len)
{
_yourEnums = 0;
}
}
}