iOS11适配全局设置
UIScrollView的contentInsetAdjustmentBehavior属性
typedef NS_ENUM(NSInteger, UIScrollViewContentInsetAdjustmentBehavior) {UIScrollViewContentInsetAdjustmentAutomatic, // Similar to .scrollableAxes, but for backward compatibility will also adjust the top & bottom contentInset when the scroll view is owned by a view controller with automaticallyAdjustsScrollViewInsets = YES inside a navigation controller, regardless of whether the scroll view is scrollableUIScrollViewContentInsetAdjustmentScrollableAxes, // Edges for scrollable axes are adjusted (i.e., contentSize.width/height > frame.size.width/height or alwaysBounceHorizontal/Vertical = YES)UIScrollViewContentInsetAdjustmentNever, // contentInset is not adjustedUIScrollViewContentInsetAdjustmentAlways, // contentInset is always adjusted by the scroll view's safeAreaInsets
} API_AVAILABLE(ios(11.0),tvos(11.0));
UIScrollViewContentInsetAdjustmentAutomatic (类似于UIScrollViewContentInsetAdjustmentScrollableAxes,scrollView会自动计算和适应顶部和底部的内边距,并且在scrollView不可滚动时,也会设置内边距)
UIScrollViewContentInsetAdjustmentScrollableAxes (自动计算内边距)
UIScrollViewContentInsetAdjustmentNever (不计算内边距)
UIScrollViewContentInsetAdjustmentAlways (根据safeAreaInsets计算内边距)
为了适配iOS11,我们需要把这个属性禁用调,使用UIScrollViewContentInsetAdjustmentNever不计算内边距,不然系统会帮我们自动计算内边距,这样在滚动之后无法定位,会出现额外的内边距偏差。
简化处理:之前项目内有大量的UIScrollView,UITableView和UICollectionVIew中单独处理iOS11的适配,导致大量的重复代码,其实没必要每次初始化的时候去单独处理这个属性,这几个控件都是遵循appearance,我们可以进行全局统一设置来简化代码。
- (void)adapterIOS11{// 适配iOS11以上UITableview 、UICollectionView、UIScrollview 列表/页面偏移if (@available(iOS 11.0, *)){[[UIScrollView appearance] setContentInsetAdjustmentBehavior:UIScrollViewContentInsetAdjustmentNever];}
}
iOS11适配全局设置相关推荐
- ios11适配 以及会有的坑
1.iPhone X尺寸问题 分辨率1125*2436 (375*812) 导航栏为 44+44 原来为20+44 底部tabbar 49+34 其余屏幕 49+0 2.打印线程问题 Main ...
- iOS11 适配遇到的坑
iOS11正式版马上就要发布了,是时候适配一波了.下面就来说说我适配过程中遇到的坑吧. UITableView:默认开启Self-Sizing 首先要知道Self-Sizing是个什么东东.看官方文档 ...
- iOS11适配 以及会遇到的坑
1.iPhone X尺寸问题 分辨率1125*2436 (375*812) 导航栏为 44+44 原来为20+44 底部tabbar 49+34 其余屏幕 49+0 2.打印线程问题 Main ...
- iOS11适配tableView顶部空白
如果你使用了MJRefresh进行刷新,并且你隐藏了导航栏,就会出现下拉刷新错乱的问题. 因为iOS 11上废除了automaticallyAdjustsScrollViewInsets这个方法,使用 ...
- iphone x php兼容吗,有关iOS11和iPhoneX的适配问题
一:iOS11 问题 有关iOS11 ,最大的变化就是增加了一个安全区域(safeArea)的概念,iOS11 适配的大部分问题都是由于它引起的. 如果还不太了解概念,推荐阅读 iOS 11 安全区域 ...
- 适配iOS11以及 iPhone X 之 网利宝App
Xcode 9 GM 已经可以下载了 作为 iOS 开发 岂能不抓紧适配iOS11 以及有齐刘海的 iPhone X 来保住饭碗呢 哈哈哈哈 文章目录 适配 iOS 11 MJRefreshHeade ...
- iOS11解决导航栏影藏返回文字的方法
iOS11适配 : iOS适配工作 需求 如果要只保留返回按钮的文字,不需要"返回"文字 iOS11之前 在全局函数执行的地方使用一下代码: let barButton = UIB ...
- iphoneX布局适配及iOS 11.0系统适配
一,想必大多开发者将自己的项目跑到iPhoneX模拟器上后,会出现各种异常,包括界面布局的变化,根据自己遇到的情况主要说下面两点大家肯定需要修改的: (1),启动页不是全屏的,(如图) 解决办法: 如 ...
- iOS11以及iPhone X遇到的相关问题
还没有开始适配之前,就已经听身边的程序猿伙伴在为iPhone X的刘海和HomeBar的存在而纷纷吐槽了.说的我都有些怕怕,胆子小,哈哈哈.下面针对在整理过程中发现的适配注意点进行简单总结. 一.iO ...
最新文章
- 谷歌开发者大会杀出技术黑马,知乎AI终于不再隐藏实力了
- 瑞士电信vCPE商用落地 华三通信NFV方案成最大功臣
- 龙果充值平台,具备话费充值、流量充值、话费卡兑换功能;可以拓展其他充值兑换业务;也适用于支付、鉴权等业务功能的拓展。
- android 应用切换滑动,Android应用中利用ViewPager实现多页面滑动切换效果示例
- 分布式存储系统设计 - Gossip
- zookeeper-大数据Week6-DAY1-1-Zookeeper
- qt 进度栏_HTML5进度栏
- 数据库防火墙数据库加密与脱敏数据泄露防护
- Windows10重装系统教程(超详细)
- Navicat常用快捷键汇总
- 百度推广系列之广告词编写必杀技
- 百脑汇 Ghost_XP_SP3 电子城国庆版 2012.10
- 我的linux学习笔记
- 跟我一起学习Windows Store的开发(1):如何创建WindowsStore的应用程序
- 指向数组的指针与指向数组首元素的指针
- Aegisub设置字体透明度
- 战地一服务器性能低怎么办,《战地1》帧数优化图文攻略 战地1帧数低怎么办?...
- 记账工具分享,教你如何连续添加新收支
- 从14次“一轮游”到问鼎大满贯 “灰姑娘”张帅这样逆袭
- 《云计算》教材试读:弹性计算云EC2