淺談Xcode9 和iOS11適配和特性
今天升級了Xcode9 剛才寫了一篇 愛劈叉的齊劉海
現(xiàn)在說說新的東西把,有些簡直不能再惡心了但有些簡直不能再貼心
首先是跳轉(zhuǎn), 之前按住Command + 左鍵 就可以跳轉(zhuǎn)了;然而今天我發(fā)現(xiàn) 除了這個:
Jump to Definition(^⌘):跳轉(zhuǎn)類頭文件或定義
Show Quick Help(⌥):顯示幫助文檔
Edit All in Scope:編輯文檔內(nèi)所有匹配內(nèi)容
在這里我要說,對于懶得不行的我,簡直要吐,多了一步操作 效率降低很多的好嗎?
那么好,你試試 Command + 右鍵
激不激動,驚不驚喜,意不意外?
再說一下報錯和警告
之前, 錯誤信息只會在錯誤處后面一行顯示,但是錯誤信息過多的時候,在看錯誤信息的時候難免有些不方便,現(xiàn)在好了,當點擊錯誤信息前面的紅點時,錯誤信息會完全展開,并且有fix功能。
還有一個貼心小功能
就是在點擊一個) ] }等有對應(yīng)括號的時候,會直接給你找到對應(yīng)的位置,這對于if嵌套層級關(guān)系定位是非常有幫助的說,尤其是看別人亂七八糟的代碼的時候 ~~~浪里個浪
關(guān)于模擬器
同時可以打開多個模擬器了,這對于多機型之間的對比和調(diào)試有很大的幫助的說
模擬器尺寸也不是以前的Command + 1 2 3 4 5了 可以自由調(diào)節(jié)大小了,方法就像word里面調(diào)整圖片一樣.等比縮放
無限調(diào)試
1.第一次無線調(diào)試還是需要先用數(shù)據(jù)線連接手機,連接好之后,選擇Window->Devices and Simulators,或者直接按command+shift+2
2.進入下一個界面,勾選上connect via network,然后等待它自動連接,連接成功之后,左上角手機后面會出現(xiàn)一個圖標,代表已經(jīng)連接成功。(成功連接的前提是手機跟電腦必須在同一個網(wǎng)段這個很重要)
3、回到選擇設(shè)備的界面,當手機右邊出現(xiàn)那個圖標,說明手機已經(jīng)準備好,拔掉數(shù)據(jù)線,可以直接run項目了
這個是朋友告訴我的,我直接找的方法哦,不是本人發(fā)現(xiàn)的~在此聲明一下啦
說完Xcode9 再說說iOS11
1.相冊權(quán)限需要增加,不然會造成閃退喲
增加info.Plist中的字段:
之前的這個字段:Privacy - Photo Library Usage Description
需要增加這個字段Privacy - Photo Library Additions Usage Description,內(nèi)容和上面字段保持一致即可。
2.UITableViewStyleGrouped樣式的UITableView的sectionHeader和sectionFooter有一個默認的高度,通常不需要顯示header或者footer的時候,會這么寫
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { return CGFLOAT_MIN; } - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { return CGFLOAT_MIN; }
但是在iOS11里面你會發(fā)現(xiàn)段頭段尾又回來辣!改了各種新增的屬性比如safeArea之類的一點用都沒有,最后發(fā)現(xiàn)必須要把estimatedSectionHeaderHeight置0才變回去
3.在iOS11中,蘋果開放了NFC(Near field communication),怕也是其推廣ApplePay的一種策略。
在使用近場通訊時,首先也要在info.plist配置NFCReaderUsageDescription 權(quán)限,案例步驟,如下:
iOS 11 Core NFC - any sample code?
4.如果您在Navigation上的titleView上添加searchBar,iOS11情況下可能有問題
- (void)resetSearchBar { CGFloat leftButtonWidth = 35, rightButtonWidth = 75; // left padding right padding UIView *container = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width - leftButtonWidth - rightButtonWidth, 44)]; self.searchBar.translatesAutoresizingMaskIntoConstraints = NO; [container addSubview:self.searchBar]; CGFloat offset = (rightButtonWidth - leftButtonWidth) / 2; // 給searchBar添加約束 [NSLayoutConstraint activateConstraints:@[ [self.searchBar.topAnchor constraintEqualToAnchor:container.topAnchor], // 頂部約束 [self.searchBar.leftAnchor constraintEqualToAnchor:container.leftAnchor constant:-25*ScreenScaleX], // 左邊距約束 [self.searchBar.rightAnchor constraintEqualToAnchor:container.rightAnchor constant:0], // 右邊距約束 [self.searchBar.bottomAnchor constraintEqualToAnchor:container.bottomAnchor], // 底部約束 [self.searchBar.centerXAnchor constraintEqualToAnchor:container.centerXAnchor constant:-offset], // 橫向中心約束 // [self.searchBar.widthAnchor constraintEqualToAnchor:container.widthAnchor constant:width] // 寬度約束 ]]; self.navigationItem.titleView = container; // 頂部導(dǎo)航搜索 }
還有其他問題的話希望大家能在留言中提出,我們一起學(xué)習(xí)探討~謝謝哦
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
- 本文總結(jié)了2016年比較嚴重的iOS漏洞(可用于遠程代碼執(zhí)行或越獄),希望能夠?qū)Υ蠹乙苿影踩矫娴墓ぷ骱脱芯繋硪恍椭?/div> 2016-12-12
iOS App的設(shè)計模式開發(fā)中對State狀態(tài)模式的運用
這篇文章主要介紹了iOS App的設(shè)計模式開發(fā)中對State狀態(tài)模式的運用,示例代碼為傳統(tǒng)的Objective-C,需要的朋友可以參考下2016-03-03IOS 開發(fā)中發(fā)送e-mail的幾種方法總結(jié)
這篇文章主要介紹了IOS 開發(fā)中發(fā)送e-mail的幾種方法總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-03-03實例講解iOS音樂播放器DOUAudioStreamer用法
本篇文章給大家通過實例講解了iOS音樂播放器DOUAudioStreamer用法以及分享了實例代碼,一起學(xué)習(xí)參考下吧。2017-12-12最新評論