美文网首页
iOS 11 注意点

iOS 11 注意点

作者: 阶梯 | 来源:发表于2017-09-22 11:38 被阅读33次

1.TableView
在iOS 11中默认启用Self-Sizing 未使用AutoLayout的TableView中的高度会出现问题.

  • Self-Sizing在iOS11下是默认开启的,Headers, footers, and cells都默认开启Self-Sizing,所有estimated 高度默认值从iOS11之前的 0 改变为UITableViewAutomaticDimension.

如果目前项目中没有使用estimateRowHeight属性,在iOS11的环境下就要注意了,因为开启Self-Sizing之后,tableView是使用estimateRowHeight属性的,这样就会造成contentSize和contentOffset值的变化,如果是有动画是观察这两个属性的变化进行的,就会造成动画的异常,因为在估算行高机制下,contentSize的值是一点点地变化更新的,所有cell显示完后才是最终的contentSize值。
因为不会缓存正确的行高,tableView reloadData的时候,会重新计算contentSize,就有可能会引起contentOffset的变化。iOS11下不想使用Self-Sizing的话,可以通过以下方式关闭:

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

1.TableView 中,如果设置了tableview的tableFooterView

_mainTableView.tableFooterView = self.footerView;

那么, 需要实现tableview的下面的几个代理方法,向上面那样把 estimatedRowHeight , estimatedSectionHeaderHeight, estimatedSectionFooterHeight 都置为0,是不好使的,第一个cell还是会下移

-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
    return 0.01;
}

-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{
    return 0.01;
}

-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
    return nil;
}
-(UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{
    return nil;
}

相关文章

  • iOS 11 注意点

    1.TableView在iOS 11中默认启用Self-Sizing 未使用AutoLayout的TableVie...

  • iOS11注意点

    http://www.sohu.com/a/193572727_487493

  • 两台iphone迁移数据快速开始需求

    如果您有运行 ios11或更高版本的iphone或ipad,请将它移近以自动登录注意点: 两台手机系统要ios11...

  • Swift 更改字体

    首先,导入字体: 其次,使用:(注意iOS11之后问题) if #available(iOS 11.0, *) {...

  • [iOS]获取手机已安装应用列表

    注意此方法是私有API适用于iOS8 ~ iOS11之前, iOS11之后不实用 简单方法 详细内容 在iOS 1...

  • iOS不同系统的区别,注意点

    总结一下开发过程遇到的特殊情况,需要注意的点 iOS9-iOS11的系统使用Xib布局cell,设置UITable...

  • iOS注意点

    子控件的x始终与保持父控件宽度一半保持一致: 使用拖拽约束的方法,动态改变约束; 使用masonry,make.l...

  • ios11 适配

    Xcode9下iOS11适配注意事项及无线部署调试 前言 看着网络上铺天盖地的iOS11的消息,作为一枚iOS从...

  • Unity接入Facebook登录

    2018-11-09更新 跳转至Facebook App登录坑点总结 IOS: 如果前期接入过微信,需要注意重载的...

  • Xcode9 iOS11适配

    1.iOS11UIToolBar上添加的按钮点击实效 测试总结:iOS11一下按钮可以正常点击iOS11以上按钮点...

网友评论

      本文标题:iOS 11 注意点

      本文链接:https://www.haomeiwen.com/subject/jezxextx.html