代码之家  ›  专栏  ›  技术社区  ›  WedgeSparda

透明导航栏下的UITableView

  •  0
  • WedgeSparda  · 技术社区  · 7 年前

    我正在尝试在带有透明导航栏的UIViewController中布局tableview。我已经完成了这一点,在我的自定义UINavigationController上使用以下代码:

    navigationBar.setBackgroundImage(UIImage(), for: .default)
    navigationBar.shadowImage = UIImage()
    navigationBar.isTranslucent = true
    

    问题是我的tableView不是从屏幕顶部开始的,而是好像导航栏仍然是不透明的。我检查了tableView的insets,结果都是零。我做错什么了?

    谢谢

    1 回复  |  直到 7 年前
        1
  •  4
  •   Kerberos    7 年前

    contentInsetAdjustmentBehavior 可从iOS11获得,因此您可以检查可用性,如以下代码所示:

    if (@available(iOS 11.0, *)) 
    {
        self.tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
    } 
    else 
    {
        self.automaticallyAdjustsScrollViewInsets = NO;
    }