iOS 8和Xcode 6的各種坑

1項目路徑坑

 

模擬器的路徑從之前的 ~/Library/Application Support/iPhone Simulator 移動到了 ~/Library/Developer/CoreSimulator/Devices/ 這相當的坑爹,之前運行用哪個模擬器直接選擇這個模擬器文件夾進去就能找到項目 


現在可好,Devices目錄下沒有標明模擬器的版本,圖片上選中的對應的可能是iPhone 5s 7.1的 


然後圖片上的文件夾對應的應該是 iPhone 4s 7.1 iPhone 4s 8.0 iPhone 5s 7.1 iPhone 5s 8.0 .......,但是我不知道哪個對應哪個啊,好吧我要瘋了 

2NSUserDefaults坑


通過 NSUserDefaults 儲存在本地的數據,在模擬器刪除APP、clean之後無法清空數據,我嘗試刪除iPhone 4s、iPhone 5s......裏面的同一個項目,還是無解,這應該是個BUG,等蘋果更新Xcode吧(我目前用的6.0)。但是真機沒有這種情況(必須的啊) 

 

3UITableView坑

 

帶有UITableView的界面如果到遇到以下警告 

 


添加以下代碼可解決 

 

 

4autolayout坑


典型的UITabBarController作爲根視圖,然後點擊其中一個頁面button的時候push到一個列表頁情況,結構如下圖 


如果在列表頁需要隱藏tabbar,那麼我一般都會在這個VC把bottombar設置爲none以便能更好的進行約束佈局, 


但是......在調試的時候你會發現進入列表頁的瞬間底部會出現一個tabbar高度的視圖。還是老老實實在就用默認的Inferred吧。 

5鍵盤彈不出

 


取消選擇Connect Hardware Keyboard 

 

6detailTextLabel無法顯示

 

先來下面這段代碼

 


代碼沒什麼問題,在iOS 7下,一秒之後cell的detailTextLabel就會顯示 測試 兩個字,但是在iOS 8卻不行detailTextLabel顯示爲空。測試發現,當detailTextLabel的text一開始爲空,iOS 8下運行就會把這個label的size設置(0, 0)從而不能正確顯示,原因是這裏 cell.detailTextLabel.text = _array[indexPath.row]; 一開始數據就是空的,解決辦法: 

如果是空就不去設置值

 

 


或者 

 

7pch文件不見了


現在Xcode 6創建的項目默認是不帶pch文件的,當然了舊版本的項目是會保留的。那麼如何添加pch文件? 

* Command + N 然後在Other裏面選擇 PCH File 

* 在Build Settings裏面找到 Prefix Header 

 


* 添加pch文件,規則是: 項目名/xxxxx.pch 

8UIAlertView的坑

 

UIAlertView顯示無標題的長文本問題 

 

UIAlertView *alterView = [[UIAlertView alloc] initWithTitle:nil message:@"遠端Git倉庫和標準的Git倉庫有如下差別:一個標準的Git倉庫包括了源代碼和歷史信息記錄。我們可以直接在這個基礎上修改代碼,因爲它已經包含了一個工作副本。"

 

 

 


上面這段代碼在iOS 8下顯示的樣子是這樣的,內容完全頂到的頂部,文字還莫名其妙的加粗了 


難道我會告訴你只要把title設置爲 @"" 就行了嗎 

UIAlertView *alterView = [[UIAlertView alloc] initWithTitle:@"" message:@"遠端Git倉庫和標準的Git倉庫有如下差別:一個標準的Git倉庫包括了源代碼和歷史信息記錄。我們可以直接在這個基礎上修改代碼,因爲它已經包含了一個工作副本。"

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章