最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS 12適配以及問題小記

 更新時間:2018年07月13日 16:54:04   作者:Jsen_Wang  
蘋果官方在上個月推送了iOS12系統(tǒng),作為一名開發(fā)者當然要緊跟更新技術(shù),所以下面這篇文章主要給大家介紹了關(guān)于iOS 12適配以及一些問題,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下

前言

本文主要給大家介紹了關(guān)于iOS12適配及問題的相關(guān)內(nèi)容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧

版本信息

Xcode: Version 10.0 beta (10L176w)
macOS: 10.14 Beta (18A293u)
iOS: 12.0(16A5288q)

問題及解決過程

1,StatusBar內(nèi)部結(jié)構(gòu)改變

現(xiàn)象:crash
crash log:
1,-[_UIStatusBarIdentifier isEqualToString:]: unrecognized selector sent to instance 0x283452820
2,Terminating app due to uncaught exception ‘NSInvalidArgumentException', reason: ‘-[_UIStatusBarIdentifier isEqualToString:]: unrecognized selector sent to instance 0x283452820'

———————————————————————————————

問題代碼和解決方法

+ (NSString *)getIphoneXNetWorkStates { 
 UIApplication *app = [UIApplication sharedApplication];
 id statusBar = [[app valueForKeyPath:@"statusBar"] valueForKeyPath:@"statusBar"];
 id one = [statusBar valueForKeyPath:@"regions"];
 id two = [one valueForKeyPath:@"trailing"];
 NSArray *three = [two valueForKeyPath:@"displayItems"];
 NSString *state = @"無網(wǎng)絡(luò)";
 for (UIView *view in three) {
  //alert: iOS12.0 情況下identifier的變成了類"_UIStatusBarIdentifier"而不是NSString,所以會在調(diào)用“isEqualToString”方法時發(fā)生crash,
  //修改前
//  NSString *identifier = [view valueForKeyPath:@"identifier"];
  //修改后
  NSString *identifier = [[view valueForKeyPath:@"identifier"] description];
  if ([identifier isEqualToString:@"_UIStatusBarWifiItem.signalStrengthDisplayIdentifier"]) {
   id item = [view valueForKeyPath:@"_item"];

   //alert: 這個問題和上邊一樣itemId是_UIStatusBarIdentifier 類型,不是string
   NSString *itemId = [[item valueForKeyPath:@"identifier"] description];
   if ([itemId isEqualToString:@"_UIStatusBarWifiItem"]) {
    state = @"WIFI";
   }
   state = @"不確定";

  } else if ([identifier isEqualToString:@"_UIStatusBarCellularItem.typeDisplayIdentifier"]) {
   UIView *statusBarStringView = [view valueForKeyPath:@"_view"];
   // 4G/3G/E
   state = [statusBarStringView valueForKeyPath:@"text"];
  }

 }
 return state;
}

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

最新評論

沭阳县| 南川市| 民乐县| 西乡县| 浦城县| 汕尾市| 浮山县| 灌阳县| 蒙城县| 绥芬河市| 济阳县| 佛冈县| 上高县| 青阳县| 阜康市| 图木舒克市| 乌兰浩特市| 津南区| 壶关县| 阿克苏市| 桐城市| 鲜城| 图们市| 铁岭县| 高台县| 万州区| 绥芬河市| 河源市| 光山县| 洪洞县| 获嘉县| 乐亭县| 邢台县| 卓尼县| 佛坪县| 通许县| 南充市| 瑞安市| 石阡县| 金阳县| 舒兰市|