之前一直使用循環(huán)的方式創(chuàng)建,現(xiàn)在找到了一種更簡便的方法,效果和Inspector面板上是一模一樣的。省事了ヾ(????)?太好惹!
效果如下: 
源碼如下:
using System.Collections.Generic;using UnityEditor;using UnityEngine;namespace XM.Editor{ public class AssetBundleCreator : EditorWindow { [MenuItem("Tools/Build Asset Bundle")] public static void BuildAssetBundle() { var win = GetWindow<AssetBundleCreator>("Build Asset Bundle"); win.Show(); } [SerializeField]//必須要加 PRotected List<UnityEngine.Object> _assetLst = new List<UnityEngine.Object>(); //序列化對象 protected SerializedObject _serializedObject; //序列化屬性 protected SerializedProperty _assetLstProperty; protected void OnEnable() { //使用當前類初始化 _serializedObject = new SerializedObject(this); //獲取當前類中可序列話的屬性 _assetLstProperty = _serializedObject.FindProperty("_assetLst"); } protected void OnGUI() { //更新 _serializedObject.Update(); //開始檢查是否有修改 EditorGUI.BeginChangeCheck(); //顯示屬性 //第二個參數(shù)必須為true,否則無法顯示子節(jié)點即List內(nèi)容 EditorGUILayout.PropertyField(_assetLstProperty, true); //結束檢查是否有修改 if (EditorGUI.EndChangeCheck()) {//提交修改 _serializedObject.ApplyModifiedProperties(); } } }}
新聞熱點
疑難解答