This version of Unity is unsupported.

SerializedProperty.arrayElementType

public string arrayElementType;

Description

Type name of the element in an array property. (Read Only)

Returns the C# type name of the element in an array property. In the case of SerializedPropertyType.ObjectReference and other internal values of SerializedPropertyType, the internal serialization type name is returned.

using System;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;

public class SerializePropertyArrayElementTypeExample : ScriptableObject { // Various kinds of lists/arrays public List<string> m_strings; public int[] m_ints; public List<Vector3> m_vectors; public GameObject[] m_gameObjects;

[MenuItem("Example/SerializedProperty arrayElementType Example")] static void ArrayElementTypeExample() { var scriptableObject = ScriptableObject.CreateInstance<SerializePropertyArrayElementTypeExample>();

using (var serializedObject = new SerializedObject(scriptableObject)) { LogType(serializedObject, "m_strings"); LogType(serializedObject, "m_ints"); LogType(serializedObject, "m_vectors"); LogType(serializedObject, "m_gameObjects"); } }

static void LogType(SerializedObject serializedObject, string arrayFieldName) { var arrayType = serializedObject.FindProperty(arrayFieldName).arrayElementType; Debug.Log($"{arrayFieldName} array type: {arrayType}"); } }