Version: 2017.1

SerializedObject

class in UnityEditor

マニュアルに切り替える

説明

SerializedObject と SerializedProperty は自動的に Undo とプレハブの UI のスタイリングを処理する一般的な方法でオブジェクトのプロパティーを編集するクラスです。

SerializedObject は SerializedPropertyEditor クラスと組み合わせて使用します。

関連項目: SerializedProperty クラス、 Editor クラス

using UnityEngine;
using UnityEditor;

public class MyObject : ScriptableObject { public int myInt = 42; }

public class SerializedPropertyTest : MonoBehaviour { void Start() { MyObject obj = ScriptableObject.CreateInstance<MyObject>(); SerializedObject serializedObject = new UnityEditor.SerializedObject(obj);

UnityEditor.SerializedProperty serializedPropertyMyInt = serializedObject.FindProperty("myInt");

Debug.Log("myInt " + serializedPropertyMyInt.intValue); } }

変数

contextThe context used to store and resolve ExposedReference types. This is set by the SerializedObject constructor.
isEditingMultipleObjectsシリアライズされたオブジェクトは複数のオブジェクトを編集するために表すかどうか(Read Only)
maxArraySizeForMultiEditingDefines the maximum size beyond which arrays cannot be edited when multiple objects are selected.
targetObject検査されるオブジェクト (Read Only)
targetObjects検査されるオブジェクト (Read Only)

コンストラクタ

SerializedObject検査されるオブジェクトの SerializedObject を作成します

Public 関数

ApplyModifiedPropertiesプロパティーの変更を適用します
ApplyModifiedPropertiesWithoutUndoUndo 操作を登録することなしでプロパティーの変更を適用します。
CopyFromSerializedProperty同じ SerializedProperty が存在した場合コピーを行います
FindPropertyプロパティー名から SerializedProperty を取得します
GetIterator1つ目のシリアライズ化されたプロパティーを取得します
SetIsDifferentCacheDirty次の /Update()/ 呼び出しの hasMultipleDifferentValues キャッシュを更新します
Updateシリアライズされたオブジェクトの形式を更新します
UpdateIfRequiredOrScript最後のUpdateの呼び出しやスクリプトを実行した後の場合で、オブジェクトが変更されたときにのみ、シリアライズされたオブジェクトの表示を更新します。