版本: Unity 6 (6000.0)
语言英语
  • C#

SerializedProperty.GetArrayElementAtIndex

建议修改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public SerializedProperty GetArrayElementAtIndex(int index);

描述

返回数组中指定索引处的元素。

其他资源:isArrayarraySizeNext

using UnityEditor;
using UnityEngine;

public class ArrayExample : ScriptableObject { public int[] m_data;

[MenuItem("Example/SerializedProperty GetArrayElementAtIndex Example")] static void Example() { ArrayExample obj = ScriptableObject.CreateInstance<ArrayExample>(); obj.m_data = new int[] { 3, 2, 1 };

SerializedObject serializedObject = new SerializedObject(obj); SerializedProperty property = serializedObject.FindProperty("m_data");

for (int i = 0; i < property.arraySize; i++) { SerializedProperty element = property.GetArrayElementAtIndex(i);

//Will print //m_data.Array.data[0] : 3 //m_data.Array.data[1] : 2 //m_data.Array.data[2] : 1 Debug.Log(element.propertyPath + " : " + element.intValue); } } }