Version: 2022.3
public string arrayElementType ;

描述

数组属性中元素的类型名称。(只读)

返回数组属性中元素的 C# 类型名称。如果存在 SerializedPropertyType.ObjectReference 以及 SerializedPropertyType 的其他内部值,则将返回内部序列化类型名称。

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}"); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961