提问者:小点点

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


当我想编辑C#Unity脚本时,它们会在Visual Studio中打开。它应该为所有与Unity相关的代码提供自动完成,但它不起作用。

在这里您可以看到缺少的功能:

如图所示,转换对象不会打开自动完成菜单。

Unity版本:5.5.2f1
Visual Studio 2015
安装了Visual Studio Tools for Unity


共3个答案

匿名用户

没有自动完成,因为脚本显示的是“杂项文件”而不是项目名称。看看下面来自您问题中视频的图片:

发生“杂项文件”消息的原因有很多:

>

  • 当您从另一个文件夹打开Unity C#文件而不是从Unity Editor打开它时,可能会发生这种情况。

    这也可能发生,因为Unity在Visual Studio仍打开时崩溃,从而损坏了某些文件。

    这可能是因为Unity已关闭然后重新打开,但不再连接到Visual Studio。打开Visual Studio时,您会获得“杂项文件”并且没有自动完成。

    当未安装Visual Studio Tools for Unity时,可能会发生这种情况。

    当您从Unity创建脚本时,请在Unity完成处理之前或圆形图标动画内容完成动画之前快速打开它。

    大多数情况下,重新启动Unity和Visual Studio应该可以解决这个问题。

    我不知道是哪一个导致了这个问题,但我会介绍最有可能的解决方案来解决这个问题。

    修复第1部分:

    >

  • 从此链接下载并安装Visual Studio Tools for Unity。在Unity和Visual Studio都关闭时执行此操作。

    从Unity编辑器中,转到编辑→首选项…→外部工具。在外部脚本编辑器下拉菜单上,将其更改为Visual Studio 2015。

    修复第2部分:

    如果新创建的C#文件以杂项形式出现,请按照以下说明操作:

    >

  • 从Visual Studio,转到工具→选项…→统一工具→杂项。在显示连接图标下,将其设置为true然后重新启动Visual Studio。

    当您重新启动时,连接图标现在应该在Visual Studio中可用。单击它,然后选择要连接的Unity实例。红色的“x”图标现在应该变成棕色的复选标记图标。现在,当您在Unity中创建一个新的C#文件时,它应该会打开而不会说“杂项”。

    修复第3部分:

    还是没修好?

    重新导入项目,然后打开C#项目。

    >

  • 关闭Visual Studio。

    从Unity,通过转到资产→全部重新导入项目。

    现在,通过转到资产→打开C#项目在Visual Studio中打开项目。这将重新加载项目并修复可能的解决方案文件问题。

    修复第4部分:

    还是没修好?

    单独修复每个C#文件。

    >

  • 单击显示所有文件图标。

    选择不执行自动完成的脚本,然后右键单击并选择包含在项目中。

    修复第5部分:

    还没修好?

    功劳归于chrisvarnz,因为这个特殊的解决方案似乎对许多人都有效。

    >

  • 关闭Visual Studio

    转到您的项目目录并删除所有生成的Visual Studio文件。

    这些是要删除的文件扩展名:

    • 。cs pro j
    • 。用户
    • 。s在

    示例:

    假设您的项目的名称称为Target_Shoot,这些是要删除的文件的样子:

    • Target_Shoot. cs pro j
    • Target_Shoot. Editor.cs pro j
    • Target_Shoot. Editor.cs pro j.user
    • Target_Shoot. Player.cs pro j
    • Target_Shoot. Player.cs pro j.user
    • Target_Shoot. s ln

    不要删除任何其他内容。

    再次从Unity双击脚本,该脚本应该生成新的Visual Studio文件,然后打开Visual Studio。这可能会解决您的问题。

    修复第6部分:

    如果不起作用,请检查您是否有此错误:

    未找到“GetRecentceNearestTargetFrameworkTask”任务

    >

  • 从这里安装Nuget PackageManager。

    重新启动Visual Studio。

    有关更多信息,请参阅此答案。

    修复第7部分

    确保加载了所有项目。在解决方案资源管理器中,它应该告诉您#of#项目。如果没有显示所有项目,请右键单击“解决方案(#of#项目)”并单击加载项目。

  • 匿名用户

    试试这个,

    >

  • 在Unity编辑器中转到菜单,单击编辑-

    现在在菜单栏中转到编辑-

    现在,如果Visual Studio已经运行,请转到Visual Studio,它将要求重新加载项目。重新加载项目。检查它是否有效,如果不关闭Visual Studio。现在从Unity Editor打开cs文件,现在它应该可以工作了。

  • 匿名用户

    我找到了另一种更方便地解决此问题的方法:

    1. 在解决方案资源管理器中选择损坏的文件。
    2. 打开它的属性。
    3. 将字段“构建操作”从“编译”切换到“无”。
    4. 然后将其切换回“编译”。

    这将以某种方式终止Unity和Visual Studio之间的同步。

    下次Visual Studio重新加载项目时,它将提示警告。只需单击“丢弃”。