iOS7,8,9区别

一,预估高度的方法在7上
  1. 如果cell里没嵌套tableview , cell高度和预估高度不一样,会默认重新刷新整个tableView,走一遍heightforrow ,如果做得是点击cell展开,会出现展开第一个cell之后将其滚出屏幕,再展开其他cell ,会再滚回到顶部, tableView滚动不受控制,乱滚;

  2. 如果cell里嵌套tableView ,点击展开cell ,刷新里面的tableView时会直接崩掉,报cell找不到heightforrow方法,改成不用预估高度方法,直接用heightforrow就好啦

二,字符串
  • 判断是否包含另一个containstring:…(7上直接崩掉8+适用)
三, window层级
  • 宏定义,预编译条件不符合可能没有定义宏(7上直接崩掉8+适用),可以直接用数字指定层级
_window.windowLevel = MAXFLOAT; 

iOS7,8,9区别_第1张图片
window层级宏定义
四, iOS9 window
  • iOS9对window的处理方式和以往不同,释放比以往更快,导致可能点两次蒙版才消失
解决方式:
  1. 将hidden放在nil前面(用window当蒙版,只需将window的层级提高即可显示)
  2. 换成用View当蒙版(用View当蒙版,需要将View添加到主window上),将背景View添加到主window上:
五, Xcode7新特性
  • Xcode7新特性出来一个关键字:泛型__kindof可以让数组里存一样的数据
@property (nonatomic, strong) NSMutableArray<__kindof NSString *> *scoreArrs;

点我看Xcode7新特性详情(感谢作者~)

你可能感兴趣的:(iOS7,8,9区别)