Xcode 9使用時那些坑

我目前使用Xcode9發現一些奇怪的坑,坑的不要不要的。。。。。

1.本地圖片怎麼也不顯示(新拖入的圖片),如果之前的用xcode8開發的項目拖入的圖片再用xcode9打開沒有影響,但是在Xcode9新拖入的圖片怎麼也不顯示。

這裏寫圖片描述
這裏寫圖片描述
這樣就是顯示不出來.
解決辦法是:在圖中部分手動再次添加一次
這裏寫圖片描述


2.網絡圖片在瀏覽器可以顯示出來,但是在app中怎麼顯示不出來(圖片http://),有人可能會說,你肯定是在info.plist中少添加了下面,
<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>

但是坑就在這裏了,你會發現你添加了,圖片還是顯示不出來,還是報的錯誤是http://授權沒有開啓的意思。
解決方法: 手動再添加一次,下圖的方法
這裏寫圖片描述


3.碰到了Xcode顯示代碼只在一行顯示的問題

這裏寫圖片描述
有人說在preferences->Text Editing->Indentation->選中Line Warpping的勾就好了 事實證明還是沒有好,到底什麼原因呢,我在想可能那個地方我誤點了呢。於是我發現Xcode的右側目錄有個warp lines的選項。
這裏寫圖片描述
這個纔是控制換不換行的關鍵,剛纔那個上個line warpping的根本沒有用,我試了不選中上一個中的line wraooing ,選中這個圖片的中的 wrap line 還是自動換行,這裏要是沒有勾選,永遠不會自動換行的。(這個可能Xcode9 Bug吧)


//2017年11月25日更新

4.今天更新一下UIwebView使用的坑,在ios11之前是沒有問題的,但是iOS11之後出現問題的

UIwebview我想說大家是不是很熟悉,我們大部分展示H5界面都是使用UIWebView,在WKWebview出來之前,WkWebview之所以被蘋果推出來就是解決UIWeview加載頁面的時候太佔用內存緣故,用WKwebview代替UIWebview。但是我們用習慣了UIWebview了很不好改,現在手機的內存都很大,根本不用考慮UIwebview佔用的那點內存。我就遇到UIWebview使用時的Bug,網上說是蘋果的安全Https的問題什麼,我把打印錯誤給你們看看

tarting WebFilter logging for process TestApp  
2017-03-04 21:01:23.046555 TestApp[807:166612] WF: _userSettingsForUser mobile: {  
    filterBlacklist =     (  
    );  
    filterWhitelist =     (  
    );  
    restrictWeb = 1;  
    useContentFilter = 0;  
    useContentFilterOverrides = 0;  
    whitelistEnabled = 0;  
}  
2017-03-04 21:01:23.046995 TestApp[807:166612] WF: _WebFilterIsActive returning: NO 

主要是打印的第一句話,我是設置了UIWebview的代理之後,再打開UIwebview界面數據還沒有加載完成之前退出那個界面,然後再打開這個UIWebview界面,就會報出這樣的錯誤,最後線程直接卡到了
這裏寫圖片描述
這個main函數中,打印出就是上面的日誌,反覆幾次嘗試都是這樣,很是坑爹,現在手機的系統都已經到iOS11,而WkWebview最低支持iOS8,所以果斷捨棄UIwebview使用WKWebview,
當然如果只是簡單展示UIWebvie不需要設置UIWebview’的代理,這樣操作是不會卡住的,到現在還是不明白什麼原因,由於我需要用到代理,去操作一些東西,所以我選擇了WKWebview。


2017.12.1更新

5.Safe Area Layout Guide

繼續吐槽Xcode9 ,相信我們在創建項目的時候都會遇到 Xcode 9.0 報錯, Safe Area Layout Guide Before IOS 9.0 這句話的表面的意思就是safe area支持的最低版本是ios9之後的,低於iOS9的都不能使用,網上千篇一律都是取消在Main.storyboard和LaunchScreen.storyboard取消使用safe area,蘋果出來的這麼好的東西,幹嘛要不用呢。哈哈哈你們可以設置支持iOS9以上就可以呀,是不是很機智。。。。
這裏寫圖片描述


這裏寫圖片描述


2017.12.5更新

6.ijkplayer集成播放器模擬器的坑

持續吐槽Xcode9,今天使用ijkplayer集成播放器的功能,在網上隨意找的一個直播源,集成完成之後使用ijkplayer的包自帶的demo在 模擬器 想看看直播的怎麼樣,出現了一個很坑的現象,居然直播的畫面出現卡頓的現象,畫面播放的特別的卡,但是不影響聲音的播放,我就下意識的以爲集成的有問題,網上各種百度,各種查,廢了半天的時間什麼原因還是沒有找到,果斷真機試試再說,TMD,居然播放沒有任何問題,聲音和畫面完全匹配同步,由此長知識了,不能完全相信Xcode模擬器這個鬼東西,真機調試纔是真正的硬道理。


2018.5.25更新

7.支持橫豎屏的app,橫屏情況下打開,界面的UI也是橫屏的解決辦法

(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中實現下面的方法就可以解決

我查看文章的鏈接 iOS屏幕自動旋轉問題 以及橫屏模式打開APP出現的問題 感謝作者

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait];//此方法

後續,繼續總結中。。。。。如果你們發現其他Xcode9的Bug以及解決方法,可以給[email protected]發郵件,我會在文章給 貢獻人的鏈接

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