iOS 11更新后及iPhone X推出后工程中遇到的问题及适配方法

 更新时间:2017年10月31日 12:02:13   作者:WidgetBox  
这篇文章主要介绍了iOS 11更新后及iPhone X推出后工程中遇到的问题及适配,需要的朋友可以参考下

1.UITableView滑动时右侧的滑动条忽长忽短的乱跳以及MJRefresh上拉刷新死循环

这是因为tableView在iOS11默认使用Self-Sizing,tableView的estimatedRowHeight、estimatedSectionHeaderHeight、estimatedSectionFooterHeight三个高度估算属性由默认的0变成了UITableViewAutomaticDimension,MJRefresh的KVO会监听错误的contentoffset,造成不停进行上拉加载操作,

解决方法可以再全局里面将上面3个属性的默认值设置为0即可

UITableView.appearance.estimatedRowHeight = 0;
UITableView.appearance.estimatedSectionFooterHeight = 0;
UITableView.appearance.estimatedSectionHeaderHeight = 0;

2.在iOS 11中tableview的contentsize默认下移了64高度

在iOS 11中UIViewCOntroller的 automaticallyAdjustsScrollViewInsets 属性被废弃了取而代之的是UIScrollVIew的contentInsetAdjustmentBehavior属性,同样的也可以更改默认的值

if (@available(iOS 11.0, *)) {
  UIScrollView.appearance.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
} else {
  // Fallback on earlier versions
  self.automaticallyAdjustsScrollViewInsets = NO;
}

然而这样写在调用相册的时候当推出系统相册的时候将系统页面contentSize的下移取消掉了导致出现了大问题,所以又将上面的默认值去掉在特定的界面修改即可

3.项目在iPhone X上运行时上下都有巨大的黑边

解决方法:因为项目中是用Assets中的LaunchImage, 这样就可以修改Assets中的LaunchImage,添加iPhoneX的Launch图(1125*2436)即可,但是

iOS 11以前,导航栏的高度是64,其中状态栏statusBar的高度是20,底部tabbar的高度是49。

iOS 11之后,iPhoneX的导航栏的高度是88,其中状态栏的statusBar的高度变成了44, 底部的tabbar变成了83。

iPhoneX的底部增加了虚拟Home区,由于安全区域的原因默认tabBar的高度由49变为83,增高了34,所以自定义的底部TabBar也需要修改其适配方案。

总结

以上所述是小编给大家介绍的iOS 11更新后及iPhone X推出后工程中遇到的问题及适配,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • IOS 头文件导入-@class注意事项总结

    IOS 头文件导入-@class注意事项总结

    这篇文章主要介绍了IOS 头文件导入-@class注意事项总结的相关资料,需要的朋友可以参考下
    2017-05-05
  • iOS开发中UITabBarController的使用示例

    iOS开发中UITabBarController的使用示例

    这篇文章主要介绍了iOS开发中UITabBarController的使用示例,代码基于Objective-C进行演示,需要的朋友可以参考下
    2015-09-09
  • iOS禁用右滑返回的两种方法

    iOS禁用右滑返回的两种方法

    这篇文章主要为大家详细介绍了iOS禁用右滑返回的两种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • iOS功能实现之列表的横向刷新加载

    iOS功能实现之列表的横向刷新加载

    现今已有越来越多的APP需要横向刷新的需求,而横向刷新加载的控件却寥寥无几,即使有也是集成起来非常的麻烦,恰巧最近项目中又用到了这个功能,所以干脆自己来造个轮子,方便大家使用。
    2016-08-08
  • iOS仿微博客户端一条微博的展示效果

    iOS仿微博客户端一条微博的展示效果

    这篇文章主要为大家详细介绍了iOS仿微博客户端,一条微博的布局,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • iOS 隐私权限和通过openURL实现跳转实例

    iOS 隐私权限和通过openURL实现跳转实例

    这篇文章主要介绍了iOS 隐私权限和通过openURL实现跳转实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • iOS开发之触摸事件

    iOS开发之触摸事件

    iOS设备都是可以多点触摸的,是指手指放在iOS设备的屏幕上从屏幕上拖动或抬起。系统当前视图响应触摸事件,若无响应则向上层传递,构成响应者链。触摸事件的函数有4个。
    2016-04-04
  • 解决iOS UITextField 编辑时文本偏移问题

    解决iOS UITextField 编辑时文本偏移问题

    这篇文章主要介绍了解决iOS UITextField 编辑时文本偏移问题,需要的朋友可以参考下
    2017-05-05
  • ios uicollectionview实现横向滚动

    ios uicollectionview实现横向滚动

    这篇文章主要为大家详细介绍了ios uicollectionview实现横向滚动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03
  • iOS开发中导航控制器的基本使用教程

    iOS开发中导航控制器的基本使用教程

    这篇文章主要介绍了iOS开发中导航控制器的基本使用教程,代码基于传统的Objective-C,需要的朋友可以参考下
    2015-11-11

最新评论