关于 [MenuItem] Hierarchy 右键扩展多选问题
问题:由于开发需要,做了一些右键扩展功能。运行都是正常的。但一旦多选物体。就会出现方法执行N次(N=选中物体个数次)的问题。
[MenuItem("GameObject/SetName", 1)]
public static void SetName()
{
foreach (var gameObject in Selection.gameObjects)
{
....
}
}
结论。
这个好像是没办法避免的,好像跟Unity版本无关。
建议单独编辑对象属性:避免同时选择多个对象进行属性编辑,尤其是它们共享相同脚本时。尽量单独编辑每个对象的属性,以确保不会发生意外更改。
另外就是代码设置状态用来屏蔽多次执行,比如设置执行标记。
还有一种,就是确保重复执行不会影响最终结果,比如我需要更改物体名称,无论执行多少次,都不会变更最终结果。