如何获取 UITabBarController 的 ViewController 的 SafeAreaLayoutGuide?

How to get the SafeAreaLayoutGuide for the ViewControllers of a UITabBarController?

我正在尝试设置视图的 Anchors,以便保持在状态栏下方,使用:

UILayoutGuide safeGuide = view.Superview.SafeAreaLayoutGuide;
view.TranslatesAutoresizingMaskIntoConstraints = false;
view.LeadingAnchor.ConstraintEqualTo(safeGuide.LeadingAnchor).Active = true;
view.TrailingAnchor.ConstraintEqualTo(safeGuide.TrailingAnchor).Active = true;
view.TopAnchor.ConstraintEqualTo(safeGuide.TopAnchor).Active = true;
view.BottomAnchor.ConstraintEqualTo(safeGuide.BottomAnchor).Active = true;

但我发现 UITabBarController 底部的选项卡部分遮挡了视图。

我该如何避免这种情况?

控制器的根视图总是被状态栏覆盖。

该视图的 SafeAreaLayoutGuide 是您用来防止 添加的子视图 延伸到状态栏区域的方法。

无论您使用 UITabBarControllerUINavigationController、常规 UIViewController 等,都是如此