Unity 6.3
0 онлайн 40 гостей 3 в системе
Вход

SerializedProperty.intValue

Declaration

public int intValue;

Описание

Значение целочисленного свойства.

Содержит допустимое значение, когда propertyType является SerializedPropertyType.Integer и базовый тип имеет знак 32 бит или меньше (e.g. sbyte, short и int). Это также подходит для небольших типов без знака (ushort и byte). Для 32-битных полей без знака используйте uintValue вместо этого. А если вы получаете доступ к 64-битным целым числам, используйте longValue или ulongValue вместо этого.

При назначении значения intValue, значение зажимается в диапазоне типа, объявленного свойством. Например, свойство, объявленное как байт, зажимается между 0 и 255.

Дополнительные ресурсы: intValue, uintValue, longValue, propertyType, SerializedPropertyType.Integer.

using System;
using System.Text;
using UnityEditor;
using UnityEngine;

public class IntegerTypeExample : ScriptableObject { public sbyte m_sbyte = SByte.MinValue; public byte m_byte = Byte.MaxValue; public short m_short = Int16.MinValue; public ushort m_ushort = UInt16.MaxValue; public int m_int = Int32.MinValue; public uint m_uint = UInt32.MaxValue; public long m_long = Int64.MinValue; public ulong m_ulong = UInt64.MaxValue;

[MenuItem("Example/SerializedProperty Integer Access APIs")] static void TestMethod() { // This example demonstrates how to access the full range of each C# integer type via SerializedProperty

IntegerTypeExample obj = ScriptableObject.CreateInstance<IntegerTypeExample>(); SerializedObject sObj = new SerializedObject(obj);

var sb = new StringBuilder(); sb.AppendLine($"m_sbyte : {sObj.FindProperty("m_sbyte").intValue}"); sb.AppendLine($"m_byte : {sObj.FindProperty("m_byte").uintValue}"); // or intValue sb.AppendLine($"m_short : {sObj.FindProperty("m_short").intValue}"); sb.AppendLine($"m_ushort : {sObj.FindProperty("m_ushort").uintValue}"); // or intValue sb.AppendLine($"m_int : {sObj.FindProperty("m_int").intValue}"); sb.AppendLine($"m_uint : {sObj.FindProperty("m_uint").uintValue}"); sb.AppendLine($"m_long : {sObj.FindProperty("m_long").longValue}"); sb.AppendLine($"m_ulong : {sObj.FindProperty("m_ulong").ulongValue}");

Debug.Log(sb.ToString()); } }