ios 11 上tableview 改动
Last updated
Last updated
1、 UIViewController的automaticallyAdjustsScrollViewInsets
属性被废弃。需要使用UIScrollView的contentInsetAdjustmentBehavior
来替代。 关于 contentInsetAdjustmentBehavior
UIScrollViewContentInsetAdjustmentAutomatic 滚动视图会自动计算和适应顶部和底部的内边距并且在滚动视图不可滚动时,也会设置内边距
UIScrollViewContentInsetAdjustmentScrollableAxes 自动计算内边距。
*UIScrollViewContentInsetAdjustmentNever 不计算内边距
*UIScrollViewContentInsetAdjustmentAlways 根据safeAreaInsets计算内边距
2、iOS 11中如果不实现-tableView: viewForFooterInSection:
和 -tableView: viewForHeaderInSection:
,那么-tableView: heightForHeaderInSection:
和- tableView: heightForFooterInSection:
不会被调用。 这是因为estimatedRowHeight
estimatedSectionHeaderHeight
estimatedSectionFooterHeight
三个高度估算属性由默认的0
变成了UITableViewAutomaticDimension
,导致高度计算不对,解决方法是实现对应方法或吧这三个属性设为0。 下面这个列表显示不全也是estimatedRowHeight引起,取contentSize出错。
3、在philm项目中我需要把默认选中的滤镜自动移动到屏幕的中间时 直接使用: