public override void ViewDidLoad() { base.ViewDidLoad(); View.AddSubview(TabBar); AddChildViewController(pageViewController); View.AddSubview(pageViewController.View); pageViewController.View.TranslatesAutoresizingMaskIntoConstraints = false; pageViewController.DidMoveToParentViewController(this); var views = NSDictionary.FromObjectsAndKeys( new NSObject[] { TabBar, pageViewController.View }, new NSObject[] { (NSString)"tabbar", (NSString)"content" } ); View.AddConstraints(NSLayoutConstraint.FromVisualFormat("V:|-0-[tabbar]-0-[content]-0-|", 0, null, views)); View.AddConstraints(NSLayoutConstraint.FromVisualFormat("H:|-0-[tabbar]-0-|", 0, null, views)); View.AddConstraints(NSLayoutConstraint.FromVisualFormat("H:|-0-[content]-0-|", 0, null, views)); tabBarHeight = NSLayoutConstraint.Create( TabBar, NSLayoutAttribute.Height, NSLayoutRelation.Equal, 1, 68 ); TabBar.AddConstraint(tabBarHeight); if (pageViewController.ViewControllers.Length == 0 && lastSelectedIndex >= 0 && lastSelectedIndex < ViewControllers.Count) { pageViewController.SetViewControllers( new[] { ViewControllers[lastSelectedIndex] }, UIPageViewControllerNavigationDirection.Forward, true, null ); } UpdateSwipe(Tabbed.SwipeEnabled); pageViewController.DidFinishAnimating += HandlePageViewControllerDidFinishAnimating; }
public override void ViewDidLoad() { base.ViewDidLoad(); View.AddSubview(TabBar); AddChildViewController(pageViewController); View.AddSubview(pageViewController.View); pageViewController.View.TranslatesAutoresizingMaskIntoConstraints = false; pageViewController.DidMoveToParentViewController(this); var layoutAttributes = new[] { NSLayoutAttribute.Leading, NSLayoutAttribute.Trailing }; for (int i = 0; i < layoutAttributes.Length; i++) { View.AddConstraint(NSLayoutConstraint.Create( TabBar, layoutAttributes[i], NSLayoutRelation.Equal, View, layoutAttributes[i], 1, 0 )); View.AddConstraint(NSLayoutConstraint.Create( pageViewController.View, layoutAttributes[i], NSLayoutRelation.Equal, View, layoutAttributes[i], 1, 0 )); } View.AddConstraint(NSLayoutConstraint.Create( pageViewController.View, NSLayoutAttribute.Bottom, NSLayoutRelation.Equal, View, NSLayoutAttribute.Bottom, 1, 0 )); View.AddConstraint(NSLayoutConstraint.Create( TabBar, NSLayoutAttribute.Top, NSLayoutRelation.Equal, View, NSLayoutAttribute.Top, 1, 0 )); View.AddConstraint(NSLayoutConstraint.Create( pageViewController.View, NSLayoutAttribute.Top, NSLayoutRelation.Equal, TabBar, NSLayoutAttribute.Bottom, 1, 0 )); tabBarHeight = NSLayoutConstraint.Create( TabBar, NSLayoutAttribute.Height, NSLayoutRelation.Equal, 1, 68 ); TabBar.AddConstraint(tabBarHeight); pageViewController.SetViewControllers( new[] { ViewControllers[0] }, UIPageViewControllerNavigationDirection.Forward, true, null ); pageViewController.WeakDataSource = this; pageViewController.DidFinishAnimating += HandlePageViewControllerDidFinishAnimating; }