有少数开发者会遇到一个问题,就是在xcode上,编码视图上代码的颜色不改变,并且伴随着一堆错误。但是编译的时候却能编译通过。
这个问题纠结了我许久,之前出现过一次,后来莫名奇妙的好了。前段时间又出现了一次,我就尝试各种办法,发现把build active architecture only 设置成 no 就能解决上述的显示错误问题。
但设置成no并不是完美的解决之道。我们知道app为了兼容更多设备,build active architecture only 的release设置为no 就行了,debug不需要设置成no,因为会影响编译速度,而且为了兼容arm64会出现n多警告(如果你的app是只针对A7处理器做的开发除外)。
而在昨天,一个偶然,我需要把缓存删掉,于是进入../Xcode/DerivedData 把里面的缓存全部删除。
删除过后,发现已经打开的项目也出现了上述问题。。。经过短暂处理,无效后,我只能先把build active architecture only 设置成 no 暂时缓解一下。
而就在今天,我突然想到,在删除../Xcode/DerivedData里面的缓存时,如果当前有打开的项目,系统会在你删除缓存后自动创建当前打开的项目的缓存。然后你的项目就出现了上述问题。我就觉得,在删除../Xcode/DerivedData里面的缓存之前,我们需要先把项目全部关闭。于是操作了一遍,发现问题果然解决了。
所以:
1-我们在删除DerivedData里面的缓存前,记得先把项目关闭。
2-如果你的项目已经出现了上述问题,先把项目关闭,然后删除DerivedData里面的缓存,即可解决。