Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Xcode 8.3自动完成和语法突出显示不起作用_Ios_Objective C_Xcode_Autocomplete_Syntax Highlighting - Fatal编程技术网

Ios Xcode 8.3自动完成和语法突出显示不起作用

Ios Xcode 8.3自动完成和语法突出显示不起作用,ios,objective-c,xcode,autocomplete,syntax-highlighting,Ios,Objective C,Xcode,Autocomplete,Syntax Highlighting,我对Xcode和Objective C非常陌生,尽管我已经用Unity/C开发了一段时间了。我很难在Xcode 8.3中让自动补全和语法突出显示“正常”工作。在过去的两天里,我一直在互联网上搜索,并尝试了所有推荐的解决方案和解决办法,我没有找到任何运气。所以我决定提出一个新问题。 复制我的问题的步骤: 在Xcode中创建新的“单视图应用程序”项目 创建一个新类“TestClass” 在TestClass.h中尝试键入NSAr。。。预期结果:XCODE应该建议NSArray(因为基础.h是自动导

我对Xcode和Objective C非常陌生,尽管我已经用Unity/C开发了一段时间了。我很难在Xcode 8.3中让自动补全和语法突出显示“正常”工作。在过去的两天里,我一直在互联网上搜索,并尝试了所有推荐的解决方案和解决办法,我没有找到任何运气。所以我决定提出一个新问题。 复制我的问题的步骤:

  • 在Xcode中创建新的“单视图应用程序”项目
  • 创建一个新类“TestClass”
  • 在TestClass.h中尝试键入NSAr。。。预期结果:XCODE应该建议NSArray(因为基础.h是自动导入的)。实际结果:事实并非如此。
  • 将UIKit.h导入TestClass.h,并在TestClass.m中尝试调用UIViewController方法。预期结果:Xcode应建议UIViewController键入,然后突出显示类名。实际结果:两者都没有。
我尝试的是:

  • 删除DerivedData文件夹
  • 重新启动Xcode/计算机(多次)
  • 确保将.m文件添加到目标(在目标成员资格窗口中)
  • 在构建阶段显式地添加基础框架>链接二进制与库
  • 将“生成设置”中的框架搜索路径设置为“框架”文件夹
  • 在首选项>组件中下载iOS和Xcode文档
  • 安装Xcode 7.3.1和7.0,以查看差异
我可能在这里遗漏了一些基本的东西,但我认为期望这样的功能能够开箱即用,而不会带来太多麻烦是合理的

任何帮助都将不胜感激

更新:

我还尝试:

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

此外,测试应用程序是一个非常简单的一个与几行代码,它建立了良好的。唯一的警告是UIViewController*vc变量的“未使用的变量”(第二个屏幕截图)。

证明问题是由我自己的操作(错误)引起的

很久以前,当我第一次与Xcode进行短暂的交互时,我故意尝试禁用它的索引功能,因为它在我的Mac上花费了太长时间(当时还没有升级)。因此,我在终端中键入以下内容:

defaults write com.apple.dt.XCode IDEIndexDisable 1
defaults delete com.apple.dt.Xcode IDEIndexDisable
就在那里。我完全忘记了这一点,直到最近我不得不再次触碰Xcode,并被自动完成和语法突出显示“不工作”所激怒。没有任何Xcode故障。我只需在终端中键入以下内容,即可再次启用索引:

defaults write com.apple.dt.XCode IDEIndexDisable 1
defaults delete com.apple.dt.Xcode IDEIndexDisable
显然是我自己制造了麻烦,但希望这些信息能对其他人有所帮助


感谢大家的帮助。

该TestClass的子类是什么请尝试以下链接:@NAVEENKUMAR TestClass是屏幕截图中NSObject的子类,没有自己的子类。@bala感谢链接。我相信我在以前的搜索中都遇到过。无论如何,我再一次检查了它们,并执行了建议的修复(添加$(SRCROOT)/到标题搜索路径,增加日志级别,并在Console.app中查找错误,等等),但运气不好。此外,这只是一个测试应用程序,只有几行代码,它构建得很好。如果问题仍然存在,请查看我的答案