tableview的注意事项

由于继承的控制器是UIViewController,需要对界面重新进行布局.


当控制器被推出之后出现的结果是如下图所示:


可以看出,tableview向上偏移了64.这就挺郁闷的,难道约束加的有问题.因为约束加的是到顶部的距离为0.
为了保证显示正确(如下图所示的情况):

解决方案一:
在初始化view时添加两句代码

//  public var automaticallyAdjustsScrollViewInsets: Bool // Defaults to YES
// 这个是scrollview自动调整.当scrollview是第一个view时,系统会自动调整,否则不会自动调整64
  automaticallyAdjustsScrollViewInsets = false
// 去掉自动调整后,我们可以手动将tableview的contentInset调整64,就能完成我们的需求
  tableView.contentInset = UIEdgeInsets(top: 64, left: 0, bottom: 0, right: 0)

需要注意的是automaticallyAdjustsScrollViewInsets这个属性是调整ScrollView的,也就是说继承了UIScrollview的都可能会出现这种问题

解决方案二:
先看一下在xib中添加的顺序,



这种解决方案就是,将tableview和view的添加顺序换一下,也而已达到上述效果,这样就不需要再添加代码了.

**附: **
当有tabBarController时,推出下一个界面时,我们要隐藏tabbar,最好的方式是设置一下属性

hidesBottomBarWhenPushed = true
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,264评论 25 708
  • 我们在上一篇《通过代码自定义不等高cell》中学习了tableView的相关知识,本文将在上文的基础上,利用sto...
    啊世ka阅读 1,533评论 2 7
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,229评论 4 61
  • <只因感君一回顾,从此思君朝与暮> 晚上23:28,叮当今天第32次打开了微信,依然没有木子的任何信息,其实她...
    小芒果暮歌阅读 367评论 0 3
  • 接孩子放学的路上,买了一束绿色的小雏菊。小雏菊共7支,每支5块钱,老板给优惠价30块钱拿走的。 看着这浓浓的饱满的...
    苗苗的麻麻阅读 818评论 0 2