我正在尝试使用 Xamarin Studio 4.0.12 (build 3) 为 iOS 编写一个简单的应用程序。
我有一个“家” UIViewController
,它是第一个添加到rootNavigationController
.
主页有一个按钮,用于显示“登录”或“创建帐户”视图,两者均基于DialogViewController
. 这些显示this.NavigationController.PushViewController
在响应主页视图按钮按下的调用中(因此“this”是主页实例)。
当用户关闭登录对话框时,会回调 Home,并在该代码this.NavigationController.PopViewControllerAnimated
中将对话框从视图堆栈中删除。
然后,再次调用以this.NavigationController.PushViewController
显示登录后可以看到的详细信息。
问题是从不显示详细视图。我已经在调试器中逐步完成,可以看到以NavigationController
正确的顺序具有适当的视图。
这是回调中的实际代码:
private void OnShowSigninScreenClose(string username, string password)
{
try
{
this.NavigationController.PopViewControllerAnimated(true);
ReceiptsScreen receiptsScreen = new ReceiptsScreen ();
this.NavigationController.PushViewController (receiptsScreen, true);
}
catch (Exception ex) {
Alert ("CaptionError".Localized (), ex.Message);
}
}
如果我删除了PopViewControllerAnimated
对详细信息屏幕的调用,则会显示,但导航栏有一个按钮可以返回登录屏幕。我真的想用视图堆栈中的详细信息屏幕替换登录屏幕。
任何建议将不胜感激。