diff --git a/Documentation~/zh/changelog.md b/Documentation~/zh/changelog.md index 65daa66f..2c351b92 100644 --- a/Documentation~/zh/changelog.md +++ b/Documentation~/zh/changelog.md @@ -77,6 +77,7 @@ slug: /changelog ## master +* (2024.11.27) 修复`Unity6`的一些代码警告问题 * (2024.11.26) 修复`Tooltip`在特殊情况下可能会超出屏幕显示不完整的问题 * (2024.11.24) 修复`UITable`在拖拽时也会点选的问题 * (2024.11.22) 修复`Time`时间轴在开启`Animation`时动态变更效果异常的问题 diff --git a/Editor/Windows/XChartsEditor.cs b/Editor/Windows/XChartsEditor.cs index 004baa43..a4c3736a 100644 --- a/Editor/Windows/XChartsEditor.cs +++ b/Editor/Windows/XChartsEditor.cs @@ -19,7 +19,11 @@ namespace XCharts.Editor GameObject selectObj = Selection.activeGameObject; if (selectObj == null) { +#if UNITY_2023_1_OR_NEWER + var canvas = UnityEngine.Object.FindFirstObjectByType(); +#else var canvas = GameObject.FindObjectOfType(); +#endif if (canvas != null) return canvas.transform; else { diff --git a/Runtime/Utilities/DefineSymbolsUtil.cs b/Runtime/Utilities/DefineSymbolsUtil.cs index 12a24c82..60a361c8 100644 --- a/Runtime/Utilities/DefineSymbolsUtil.cs +++ b/Runtime/Utilities/DefineSymbolsUtil.cs @@ -4,6 +4,7 @@ using System; using System.Reflection; using System.Text; using UnityEditor; +using UnityEditor.Build; using UnityEngine; namespace XCharts.Runtime @@ -16,6 +17,22 @@ namespace XCharts.Runtime { var flag = false; var num = 0; +#if UNITY_2022_1_OR_NEWER + foreach (var buildTargetGroup in (BuildTargetGroup[]) Enum.GetValues(typeof(BuildTargetGroup))) + { + if (IsValidBuildTargetGroup(buildTargetGroup)) + { + var buildTargetName = NamedBuildTarget.FromBuildTargetGroup(buildTargetGroup); + var symbols = PlayerSettings.GetScriptingDefineSymbols(buildTargetName); + symbols = symbols.Replace(" ", ""); + if (Array.IndexOf(symbols.Split(';'), symbol) != -1) continue; + flag = true; + num++; + var defines = symbols + (symbols.Length > 0 ? ";" + symbol : symbol); + PlayerSettings.SetScriptingDefineSymbols(buildTargetName, defines); + } + } +#else foreach (var buildTargetGroup in (BuildTargetGroup[]) Enum.GetValues(typeof(BuildTargetGroup))) { if (IsValidBuildTargetGroup(buildTargetGroup)) @@ -29,6 +46,7 @@ namespace XCharts.Runtime PlayerSettings.SetScriptingDefineSymbolsForGroup(buildTargetGroup, defines); } } +#endif if (flag) { Debug.LogFormat("Added global define symbol \"{0}\" to {1} BuildTargetGroups.", symbol, num); @@ -39,6 +57,29 @@ namespace XCharts.Runtime { var flag = false; var num = 0; +#if UNITY_2022_1_OR_NEWER + foreach (var buildTargetGroup in (BuildTargetGroup[]) Enum.GetValues(typeof(BuildTargetGroup))) + { + if (IsValidBuildTargetGroup(buildTargetGroup)) + { + var buildTargetName = NamedBuildTarget.FromBuildTargetGroup(buildTargetGroup); + var symbols = PlayerSettings.GetScriptingDefineSymbols(buildTargetName).Split(';'); + if (Array.IndexOf(symbols, symbol) == -1) continue; + flag = true; + num++; + s_StringBuilder.Length = 0; + foreach (var str in symbols) + { + if (!str.Equals(symbol)) + { + if (s_StringBuilder.Length > 0) s_StringBuilder.Append(";"); + s_StringBuilder.Append(str); + } + } + PlayerSettings.SetScriptingDefineSymbols(buildTargetName, s_StringBuilder.ToString()); + } + } +#else foreach (var buildTargetGroup in (BuildTargetGroup[]) Enum.GetValues(typeof(BuildTargetGroup))) { if (IsValidBuildTargetGroup(buildTargetGroup)) @@ -59,6 +100,7 @@ namespace XCharts.Runtime PlayerSettings.SetScriptingDefineSymbolsForGroup(buildTargetGroup, s_StringBuilder.ToString()); } } +#endif if (flag) { Debug.LogFormat("Removed global define symbol \"{0}\" to {1} BuildTargetGroups.", symbol, num);