来回导航多次使UIView变为黑色

时间:2019-06-20 08:31:36

标签: xamarin xamarin.ios

我有一个UICollectionView,当选择一个单元格时,会从该UICollectionView推送一个UITabBarController。 来回导航多次(大约14次),使ViewController中的UI变为黑色。以下屏幕截图显示了来回导航https://imgur.com/a/H3ywdnX后,UI的外观 任何建议为什么会发生这种情况。

这就是我要求导航到视图

我浏览到的“视图”的设置:

public partial class NavigationView : UITabBarController 
{
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            SetupTabBar();
        }

        private void SetupTabBar()
        {
            //ios7 layout
            if (RespondsToSelector(new Selector("edgesForExtendedLayout")))
            {
                EdgesForExtendedLayout = UIRectEdge.None;
            }

            UITabBar.Appearance.TintColor = _iosConstants.ApplicationColors.GreenTitleColor;

            UIControlHelpers.SetTabBarButtonTextAttributes(_iosConstants.IphoneProjectView.BarTextColor, "Helvetica Neue", 11.0f, UIControlState.Normal);
            UIControlHelpers.SetTabBarButtonTextAttributes(UIColor.White, "Helvetica Neue", 11.0f, UIControlState.Selected);

            NavigationController.NavigationBar.BarTintColor = _iosConstants.General.TabBarGreenColor;
            NavigationController.NavigationBar.TintColor = _iosConstants.General.TabBarGreenColor;

            this.TabBar.Translucent = false;
            this.TabBar.ShadowImage = null;

            NavigationController.SetNavigationBarHidden(true, false);

            SelectedIndex = 0;
        }

        public override void ViewDidLayoutSubviews()
        {
            base.ViewDidLayoutSubviews();

            TabBar.InvalidateIntrinsicContentSize();
        }
}

NavigationController.PushViewController(_ctrl,true);

1 个答案:

答案 0 :(得分:0)

我已找到问题所在。首先,问题是UITabViewController不是根控制器,并且我发现推送UITabViewController的新实例是不正确的。