12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using XGame.Framework.Asset.Addressable;
- using UnityEditor;
- using UnityEngine;
- namespace XGame.Editor.Asset
- {
- public class AddressableInfoManifestTab
- {
- private AddressableClassify classifyOperation;
- private AddressableInfosSoEditor manifestEditor;
- private string[] assetsRoots;
- public AddressableInfoManifestTab(AddressableClassify classify)
- {
- classifyOperation = classify;
- var manifest = AddressableHelper.LoadAssetManifest(classify);
- if (manifest != null)
- {
- manifestEditor = new AddressableInfosSoEditor(manifest);
- assetsRoots = AddressableHelper.GetAssetsRoots(classify);
- }
- }
- private Vector2 scrollPosition;
- public void OnGUI()
- {
- if (manifestEditor != null)
- {
- if (assetsRoots != null)
- {
- EditorGUI.BeginDisabledGroup(true);
- EditorGUILayout.BeginVertical();
- foreach (var resRoot in assetsRoots)
- {
- var fold = AssetDatabase.LoadMainAssetAtPath(resRoot);
- if (fold != null)
- {
- EditorGUILayout.ObjectField("资源目录", fold, fold.GetType(), false);
- }
- }
- EditorGUILayout.EndVertical();
- EditorGUI.EndDisabledGroup();
- //EditorGUILayout.BeginHorizontal();
- scrollPosition = EditorGUILayout.BeginScrollView(scrollPosition, false, true);
- manifestEditor?.OnGUI();
- if (classifyOperation == AddressableClassify.Product)
- {
- if (GUILayout.Button("导出Excel"))
- {
- ExcelHelper.AddressableAssetsToExcel(classifyOperation);
- }
- }
- EditorGUILayout.EndScrollView();
- //EditorGUILayout.EndHorizontal();
- }
- }
- }
- public void Close()
- {
- manifestEditor?.Close();
- }
- }
- }
|