XCode 6不能快速自动完成
我试图导入各种图书馆,我不记得他们的确切名称。 不幸的是XCode
6(使用swift
)并不像使用objective-c在XCode
5中那样自动完成它们。
例如:
ALAssetsLibrary MPMediaPlayer
等等
我被迫谷歌确切的框架名称,然后回去复制粘贴。
一般来说,自动完成function非常糟糕。 我在XCode 6中做错了什么?
我应该在设置中设置任何标志来使其工作?
来自苹果开发论坛的这个修复程序适用于我。 自从testing版5发布以来,我已经有了性能/自动完成的问题,现在我的旧2010 MBP上的xcode 6.1 / Yosemite正在运行完美。
- 退出Xcode。
- 重新启动计算机(这是为了清除任何内存中的caching)。
- 删除DerivedData文件夹的内容(〜/ Library / Developer / Xcode / DerivedData)
- [这是关键的举措:]删除〜/ Library / Caches / com.apple.dt.Xcode。
现在再次启动Xcode …
这与上面正确select的答案相同,但稍微简单一些。
我必须做几次,在我的testing中,你可以跳过重新启动你的Mac。
1)closuresXcode
2)terminal – > rm -rf〜/ Library / Developer / Xcode / DerivedData / *
3)terminal – > rm -rf〜/ Library / Caches / com.apple.dt.Xcode
重新启动Xcode,它应该恢复正常。
我发现如果我的部署目标是8.1,那么自动完成总是有效的。 但是,如果不是这样,这是不可靠的。
提高xCode速度和重复使用技巧的最简单方法是创build一个别名,并在每次需要时调用它:
1.开放docker:
2.input您的terminal(或复制并粘贴):
alias xcodeclean="rm -frd ~/Library/Developer/Xcode/DerivedData/* && rm -frd ~/Library/Caches/com.apple.dt.Xcode/*"
最后一步是inputxcodeclean
(记住:下一个当你想清理xcodeclean
只需调用xcodeclean
)
我曾经有过这样的事情,确保你在最新的testing版本上有帮助。 不幸的是,您必须每次通过开发者平台下载最新的一个。
我也注意到,当swift编译器正在努力编译一些东西,即使它没有错误,并且如果注释掉或删除了正确的代码行,该function就会像预期的那样回滚,那么autocompletion就会消失。 绝对是由beta质量软件产生的。
最后一个星期,我的头靠在墙上,因为swift编译器和sqrt()
函数不兼容。 希望这些问题在完全发布的时候被解决。
对不起,没有真正的“修复”呢!
有时它也不会自动完成。 我认为这是由于Xcode 6仍处于testing阶段。 顺便说一句,你有没有更新Xcode 6testing版? 目前最新的是beta 5。 我一段时间都没有注意到App Store没有更新Xcode 6testing版,所以我被困在testing版1中一段时间。 如果你还没有更新它,那就去做吧。 也许这会帮助像这样的错误。
我觉得这非常烦人。 发布的答案清除派生的数据工程bulletproof,但是你应该清理文件夹之前closuresxcode。 我已经做了一个小脚本来为我做这个工作。
#!/bin/bash echo "Start fixing xCode" echo "Closing xCode" osascript -e 'tell app "Xcode" to quit' sleep 2 echo "Clearing DerivedData..." rm -rf "$HOME/Library/Developer/Xcode/DerivedData" sleep 2 echo "Launch xCode again" osascript -e 'tell app "Xcode" to run' echo "Finish fixing xCode"
现在每当xCode给我一个手指,我只是运行它。 你需要重新编译一切的问题仍然存在。
编辑
感谢@Nikolay Spassov的评论中的build议,我调整了脚本来捕获你的主目录,而不是改变它。 所以下面的步骤已经不再需要了。
老步
请注意,您必须更改'/用户/ iphonedev5 …'部分,以使其在您的系统中工作:)
我试图改变字体和颜色默认,它的工作。 我通常在MidNight2上。
我尝试了所有这些,但无济于事 – 没有任何工作。 我的情况是我有一个Swift类“A”,在执行一个大的合并到我的分支后,不能再看到几个其他的Swift文件(“B” – “F”),位于我的项目中不同的组。
有趣的是,“A”既属于主体项目Target,也属于UnitTest目标,而“B”,“C”,“D”,“E”和“F”只属于主体项目Target。
通过将它们包含在UnitTests中,Xcode现在可以正确地看到这些类 – 也许是同一个目标中的成员?
固定的几件事情:1)现在的代码完成工作。 2)行号旁边的小红色错误标记(“未parsing的标识符”错误)也被清除了。 最后一个对我来说是非常烦人的,因为当你CMD-Bbuild立他们清理和代码编译就好/运行就好。 但是,进行任何更改(例如添加一个空白区域),并且这些都会一直出现(当然,Code Completion也会再次停止工作)。
不知道这是一个Swift或Xcode的问题,但这是为我解决了这个问题。
如果您找不到上面提到的所有文件夹,或者您懒得inputterminal,请尝试以下操作:
•在桌面上创build一个新文件夹
•转到您的应用程序文件夹复制Xcode应用程序
将应用程序粘贴到您在桌面上创build的文件夹中
*再次返回应用程序文件夹并从应用程序文件夹中删除Xcode。 您可以通过使用cleanMyMac2或任何其他更清洁的应用程序来删除Xcode应用程序,以便像com.apple.Xcode和其他所有这样的文件去。
•完成后重新启动计算机
•转到您创build的早期文件夹,打开Xcode,您将看到条款和条件,接受并开始您的项目
祝你好运