美文网首页
iOS开发常见问题-UITableViewController

iOS开发常见问题-UITableViewController

作者: 年轻岁月 | 来源:发表于2016-06-25 12:58 被阅读2086次

    在使用UITableViewController过程中,

    @interface TestTableViewController : UITableViewController
    
    @end
    
    '-[UITableViewController loadView] instantiated view controller with identifier "UIViewController-BYZ-38-t0r" from storyboard "Main", but didn't get a UITableView.'
    
    • 造成这个错误的原因
      • 错误地将一个UIViewController当做UITableViewController来用
    • 错误做法
    Snip20151108_134.png
    • 正确做法
    Snip20151108_135.png Snip20151108_137.png

    contentInset的调整

    • 默认情况下, 如果一个控制器A处在导航控制器管理中, 并且控制器A的第一个子控件是UIScrollView, 那么就会自动调整这个UIScrollView的contentInset
      • UIEdgeInsetsMake(64, 0, 0, 0) // 有导航栏
      • UIEdgeInsetsMake(20, 0, 0, 0) // 没有导航栏
    • 默认情况下, 如果一个控制器A处在导航控制器管理中, 并且导航控制器又处在UITabBarController管理中, 并且控制器A的第一个子控件是UIScrollView, 那么就会自动调整这个UIScrollView的contentInset
      • UIEdgeInsetsMake(64, 0, 49, 0)
    • 如何禁止上述的默认问题?
    控制器A.automaticallyAdjustsScrollViewInsets = NO;
    

    解决tableView设置tableFooterView时contentSize不正确的问题

    tableView.tableFooterView = footerView;
    // 重新刷新数据(会重新计算contentSize)
    [tableView reloadData];
    

    相关文章

      网友评论

          本文标题:iOS开发常见问题-UITableViewController

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