Xcode 9不会通过变量名自动完成功能

Sti*_*Sti 6 xcode autocomplete ios xcode9-beta xcode9

我们都知道并喜欢Xcode的自动完成功能. 在此输入图像描述 上面的截图来自Xcode 9.我看起来与Xcode 8中的相同.它了解我的类,以及它的所有不同的声明和功能等.这不是SearchPaths问题.

Xcode 8中,我们能够开始键入函数名称或任何函数/初始化器声明中使用的任何变量的名称,以帮助我们想要的自动完成单个输出,如下所示: 在此输入图像描述

但是,在Xcode 9中,这种情况不再发生.相反,它完全忽略上下文并开始显示自动完成,就像我在新行上键入它一样. 在此输入图像描述 有没有办法再次启用它?直到我失去它,我才知道我需要这个功能.

Kal*_*Kal 0

在 XCode 9.3 中,这种情况发生在我身上,但只有(似乎)满足以下所有条件:

\n\n
    \n
  1. 该实例是从与类型定义不同的文件或范围创建的
  2. \n
  3. 该实例不是函数内部创建的
  4. \n
  5. 当前范围内尚未创建相同类型的实例。(正如这里所讨论的。)
  6. \n
\n\n

这意味着一些可能的解决方法。您可以在函数中创建实例,然后将该代码行移到其他地方。或者,您可以先创建一个虚拟实例,然后在下一行创建真实实例\xe2\x80\x94,即使您不在虚拟行中包含参数,这也可以工作。例如:

\n\n
let dummy = MyObject  // no autocomplete available here\nlet obj = MyObject(anything: Any Object)  // autocomplete working on this line!\n
Run Code Online (Sandbox Code Playgroud)\n