繁体   English   中英

Xcode 8.3自动完成和语法高亮不起作用

[英]Xcode 8.3 autocomplete and syntax highlighting not working

我是Xcode和Objective C的新手,虽然我已经用Unity / C#开发了一段时间了。 我正在努力让自动完成和语法突出显示在Xcode 8.3中“正常”工作。 在过去的两天里,我一直在互联网上搜索并尝试了我发现的所有推荐的解决方案和解决方法,没有任何运气。 所以我决定开一个新问题。 重现我的问题的步骤:

  • 在Xcode中创建新的“单一视图应用程序”项目。
  • 创建一个新类“TestClass”。
  • 在TestClass.h中尝试输入NSAr ...预期结果:Xcode应该建议NSArray(因为Foundation.h是自动导入的)。 实际结果:它没有。 没有自动完成
  • 将UIKit.h导入TestClass.h,并在TestClass.m中尝试调用UIViewController方法。 预期结果:Xcode应该建议输入UIViewController,然后突出显示类名。 实际结果:它既没有。 没有语法突出显示

我尝试了什么:

  • 删除DerivedData文件夹。
  • 重启Xcode /电脑(多次)
  • 确保将.m文件添加到目标(在“目标成员资格”窗口中)
  • 在Build Phases> Link Binary With Libraries中显式添加Foundation框架
  • 将Build Settings中的Framework Search Paths设置为Frameworks文件夹
  • 在Preferences> Components中下载iOS和Xcode文档
  • 安装Xcode 7.3.1和7.0,看看没有区别。

我可能在这里遗漏了一些基本内容,但我认为期待这样的功能开箱即用,没有太多麻烦是合理的吗?

任何帮助将非常感激!

更新:

我也尝试过:

  • 将$(SRCROOT)/添加到标题搜索路径。
  • 增加日志级别:默认写入com.apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3并在Console.app中查找特定于Xcode的“找不到文件”错误(未找到此类错误)。

此外,测试应用程序是一个非常简单的代码,几行代码并且构建良好。 唯一的警告是UIViewController * vc变量的“未使用的变量”(第2个截图)。

原来这个问题是由我自己的行为造成的(错误)。

很久以前,当我第一次与Xcode进行简短的交互时,我故意试图禁用它的索引 ,因为我的Mac上花了太长时间(当时没有升级)。 所以我在终端输入了这个:

defaults write com.apple.dt.XCode IDEIndexDisable 1

它就在那里。 我完全忘了这个,直到最近我不得不再次触摸Xcode,并被自动完成和语法突出显示“不工作”而疯狂。 没有任何Xcode错误。 我需要做的就是让它工作再次启用索引,方法是在终端输入:

defaults delete com.apple.dt.Xcode IDEIndexDisable

我显然创造了自己的麻烦,但希望这些信息对其他人有帮助。

感谢大家的帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM