在 Visual Studio 中编辑的 Unity 脚本在某些行上不提供自动完成功能

Posted

技术标签:

【中文标题】在 Visual Studio 中编辑的 Unity 脚本在某些行上不提供自动完成功能【英文标题】:Unity Scripts edited in Visual studio don't provide autocomplete on certain lines 【发布时间】:2021-03-19 13:39:12 【问题描述】:

当我编辑 C# Unity 脚本时,它们会在 Visual Studio 中打开。我注意到自动完成功能在某些行上有效,但在其他行上无效。

在这里你可以看到发生了什么:

如您所见,仅当我在第 19 行内键入时,我才能获得 GetComponent 函数的自动完成功能。

我也试过这个:

通过移动整个Start() 函数,自动完成功能似乎可以工作,但是当移回原来的位置时,它似乎又停止工作了。

通过进一步测试,我注意到自动完成功能在第 11 到 14 行不起作用,而在任何其他行都起作用。

我尝试更新 Visual Studio,删除并重新创建 C# 脚本,重新生成项目文件,甚至重新导入所有资产。没有任何效果。

Unity 版本:2020.2.7f1 视觉工作室:8.9.2 操作系统:macOS 11.2.3

【问题讨论】:

悬停在红色下划线线上说明了什么? 不幸的是,此示例中显示的文件已被修改,因为我不得不继续我的项目。似乎问题已经消失并且有点“自我修复”。但是,我确实记得红色下划线文字所说的内容。这是典型的“名称 [name] 不存在”,它会建议我生成代码,无论是类、字段还是函数。 【参考方案1】:

嗯,这很奇怪。尝试进入统一编辑器,进入编辑/首选项/外部工具并选择您正在使用的 VisualStudio 版本作为外部脚本编辑器。

【讨论】:

以上是关于在 Visual Studio 中编辑的 Unity 脚本在某些行上不提供自动完成功能的主要内容,如果未能解决你的问题,请参考以下文章

在visual studio编辑器中检测活动

在编辑器中键入时 Visual Studio 崩溃

Visual Studio 中的多行编辑

如何在 Visual Studio 中(重新)启用实时 CSS 编辑?

如何编辑 Visual Studio Code 的默认深色主题?

如何在 Visual Studio 2008 xml 编辑器中编辑工作项?