隨著iOS10.0的推出,原本打算繼續(xù)使用Xcode7.3.1+iOS10包來做iOS10的適配,但是想到7.3.1各種不方便(模糊查找,類名不提示等),果斷決定升級(jí)到8,想來8應(yīng)該這些問題都解決了,再著技術(shù)交流群里各種說8好,但也說坑很多的,想來自己看看,所以。。。。就8了。
首先查看群友說的xib的問題,于是第一件事不是Run而是打開xib,然后。。。

那就選者吧,6s,我喜歡的??。選擇后會(huì)立馬多出許多??,點(diǎn)開發(fā)現(xiàn)xib的子控件的Fram需要更新,所以照它說的做了,把所有xib文件都點(diǎn)了一遍,然后就是跑下看。

一運(yùn)行,控制臺(tái)就輸出如上圖,什么鬼?嚇的我立馬百度,也沒看到說明這是啥的,但是有屏蔽方法,于是照做了(似乎這些東西可以忽略),屏蔽方法如下

點(diǎn)擊1方框選擇Edit Scheme-> Run -> Arguments, 在Environment Variables里邊添加
OS_ACTIVITY_MODE = Disable就可以解決了。
解決完了,就運(yùn)行就在模擬器上各種點(diǎn)擊,查看頁面,顯然又遇到問題

昨天還正常顯示的頁面,子視圖都不見了?消失了,然后就各種找原因,通過圖層信息發(fā)現(xiàn)

果然是Fram的原因,最后在越界的地方發(fā)現(xiàn)了子視圖。說明7->8的約束沒有生效,那么就重新約束下,然而還有種解決方案

原來Xcode 7.x和8.0可以同時(shí)存在,并格提供了轉(zhuǎn)換方法,將Opens in 的8.0改成7.x就解決了,但有點(diǎn)煩人的是,你每次打開這個(gè)xib都會(huì)讓你選擇device,如果這時(shí)你的xib不用修改 了就不要選擇choose device了,而是直接close document,否則要重新改opens in