iPhone X適配遇到的問題

1.滾動條高度跳動板壮、上下拉刷新問題:

 self.tableView.estimatedRowHeight = 0;
 self.tableView.estimatedSectionHeaderHeight = 0;
 self.tableView.estimatedSectionFooterHeight = 0;

2. 列表/頁面偏移

本來是這樣的

if (@available(iOS 11.0, *)){
    _tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}

目前發(fā)現(xiàn)所有的Scrollview 及其子類都需要設(shè)置 contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever 辩昆,工程中大量使用列表的同學(xué)不要慌,不要忙西设,因為UIView及其子類都遵循UIAppearance協(xié)議,我們可以進(jìn)行全局配置:

 // AppDelegate 進(jìn)行全局設(shè)置
if (@available(iOS 11.0, *)){
    [[UIScrollView appearance] setContentInsetAdjustmentBehavior:UIScrollViewContentInsetAdjustmentNever];
}

這樣一來使用UITableview 答朋、UICollectionView贷揽、UIScrollview的時候就不需要再單獨設(shè)置該屬性了。

3. 導(dǎo)航欄按鈕位置問題

之前這樣寫控制按鈕的邊距

 //調(diào)整按鈕邊距
 UIBarButtonItem* spaceItem = [[UIBarButtonItem   alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
 //將寬度設(shè)為負(fù)值
 spaceItem.width= -5;
 [items addObject:spaceItem];

今日不同往日梦碗,此方法無效了禽绪。
我試著使用了下面的方法

 pragma mark ————— 導(dǎo)航欄 添加文字按鈕 —————
- (NSMutableArray<UIButton *> *)addNavigationItemWithTitles:(NSArray *)titles isLeft:(BOOL)isLeft target:(id)target action:(SEL)action tags:(NSArray *)tags
{
NSMutableArray * items = [[NSMutableArray alloc] init];
//調(diào)整按鈕位置
// UIBarButtonItem* spaceItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
//將寬度設(shè)為負(fù)值
//  spaceItem.width= -5;
//  [items addObject:spaceItem];

NSMutableArray * buttonArray = [NSMutableArray array];
NSInteger i = 0;
for (NSString * title in titles) {
    UIButton * btn = [UIButton buttonWithType:UIButtonTypeCustom];
    btn.frame = CGRectMake(0, 0, 30, 30);
    [btn setTitle:title forState:UIControlStateNormal];
    [btn addTarget:target action:action forControlEvents:UIControlEventTouchUpInside];
    btn.titleLabel.font = SYSTEMFONT(16);
    [btn setTitleColor:KWhiteColor forState:UIControlStateNormal];
    btn.tag = [tags[i++] integerValue];
    [btn sizeToFit];
    
    //設(shè)置偏移
    if (isLeft) {
        [btn setContentEdgeInsets:UIEdgeInsetsMake(0, -10, 0, 10)];
    }else{
        [btn setContentEdgeInsets:UIEdgeInsetsMake(0, 10, 0, -10)];
    }
    
    UIBarButtonItem * item = [[UIBarButtonItem alloc] initWithCustomView:btn];
    [items addObject:item];
    [buttonArray addObject:btn];
}
if (isLeft) {
    self.navigationItem.leftBarButtonItems = items;
} else {
    self.navigationItem.rightBarButtonItems = items;
}
return buttonArray;

}
圖層調(diào)試發(fā)現(xiàn)此法其實屬障眼法,并不完美洪规,設(shè)置內(nèi)容偏移印屁,其實際位置并沒有發(fā)生變化,這可能導(dǎo)致按鈕部分區(qū)域無法點擊淹冰,目前偏移10像素問題不大库车,其他請自行測試,若有更完美的辦法請聯(lián)系我更新樱拴。

4. 位置權(quán)限

在IOS11柠衍,原有的NSLocationAlwaysUsageDeion被降級為NSLocationWhenInUseUsageDeion。因此晶乔,在原來項目中使用requestAlwaysAuthorization獲取定位權(quán)限珍坊,而未在plist文件中配置NSLocationAlwaysAndWhenInUseUsageDeion,系統(tǒng)框不會彈出正罢。建議新舊key值都在plist里配置阵漏,反正我試下來是沒有問題,唯一的區(qū)別是使用requestAlwaysAuthorization獲取權(quán)限 IOS11系統(tǒng)彈框會把幾種權(quán)限級別全部列出翻具,供用戶選擇履怯,顯然更人性化了。
快去更新你的info.plist

<!-- 位置 -->
<key>NSLocationUsageDescription</key>
<string>獲取地理位置裆泳,精準(zhǔn)推送服務(wù)</string>
<!-- 在使用期間訪問位置 -->
<key>NSLocationWhenInUseUsageDescription</key>
<string>獲取地理位置叹洲,精準(zhǔn)推送服務(wù)</string>
<!-- 始終訪問位置 -->
<key>NSLocationAlwaysUsageDescription</key>
<string>App需要您的同意,才能始終訪問位置</string>
<!-- iOS 11訪問位置 -->
<key>NSLocationAlwaysAndWhenInUseUsageDeion</key>
<string>App需要您的同意,才能始終訪問位置</string>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市工禾,隨后出現(xiàn)的幾起案子运提,更是在濱河造成了極大的恐慌蝗柔,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件民泵,死亡現(xiàn)場離奇詭異癣丧,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)栈妆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評論 3 393
  • 文/潘曉璐 我一進(jìn)店門胁编,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人签钩,你說我怎么就攤上這事掏呼。” “怎么了铅檩?”我有些...
    開封第一講書人閱讀 163,524評論 0 353
  • 文/不壞的土叔 我叫張陵憎夷,是天一觀的道長。 經(jīng)常有香客問我昧旨,道長拾给,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,339評論 1 293
  • 正文 為了忘掉前任兔沃,我火速辦了婚禮蒋得,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘乒疏。我一直安慰自己额衙,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,387評論 6 391
  • 文/花漫 我一把揭開白布怕吴。 她就那樣靜靜地躺著窍侧,像睡著了一般。 火紅的嫁衣襯著肌膚如雪转绷。 梳的紋絲不亂的頭發(fā)上伟件,一...
    開封第一講書人閱讀 51,287評論 1 301
  • 那天,我揣著相機(jī)與錄音议经,去河邊找鬼斧账。 笑死,一個胖子當(dāng)著我的面吹牛煞肾,可吹牛的內(nèi)容都是我干的咧织。 我是一名探鬼主播,決...
    沈念sama閱讀 40,130評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼籍救,長吁一口氣:“原來是場噩夢啊……” “哼习绢!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起钧忽,我...
    開封第一講書人閱讀 38,985評論 0 275
  • 序言:老撾萬榮一對情侶失蹤毯炮,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后耸黑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體桃煎,經(jīng)...
    沈念sama閱讀 45,420評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,617評論 3 334
  • 正文 我和宋清朗相戀三年大刊,在試婚紗的時候發(fā)現(xiàn)自己被綠了为迈。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,779評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡缺菌,死狀恐怖葫辐,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情伴郁,我是刑警寧澤耿战,帶...
    沈念sama閱讀 35,477評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站焊傅,受9級特大地震影響剂陡,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜狐胎,卻給世界環(huán)境...
    茶點故事閱讀 41,088評論 3 328
  • 文/蒙蒙 一鸭栖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧握巢,春花似錦晕鹊、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,716評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至肉渴,卻和暖如春公荧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背同规。 一陣腳步聲響...
    開封第一講書人閱讀 32,857評論 1 269
  • 我被黑心中介騙來泰國打工循狰, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人券勺。 一個月前我還...
    沈念sama閱讀 47,876評論 2 370
  • 正文 我出身青樓绪钥,卻偏偏與公主長得像,于是被迫代替她去往敵國和親关炼。 傳聞我的和親對象是個殘疾皇子程腹,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,700評論 2 354

推薦閱讀更多精彩內(nèi)容