我创建了一个RootViewController类。在这个类中,我有事件监听用户日志记录成功,然后将视图控制器呈现给登录页面。它在应用程序启动时工作正常,因为我将RootViewController类放到了windows.RootViewController属性,问题是 - 在成功登录后,我在下一页上有一个注销按钮作为条形项。当我点击注销按钮时,我会关闭当前视图控制器,然后再次尝试呈现RootViewController,以便RootViewController类可以再次向用户显示登录屏幕。但是,当我触摸注销按钮时,只显示白色空白屏幕而不是登录页面。在控制台上,它输出以下警告消息。我只是想补充一点,它在iOS 7.0中运行良好,但在将Xamarin更新到iOS 8.0后,我开始遇到这个问题。
警告:尝试显示其视图不在窗口层次结构中!
答案 0 :(得分:0)
我解决了这个问题。我在RootViewController中重定向到登录页面的代码必须在ViewWillAppear方法中。早些时候,我只在ViewDidLoad方法中使用过它。然后,我发现ViewDidLoad只在应用程序加载中执行一次,但ViewWillAppear在evey上运行