0

我正在开发的应用程序由数据层次结构和用于搜索该数据的过滤器组成。数据显示在表格视图的层次结构中,并且通过该层次结构进行导航可以正常工作。但是,当我尝试导航到我的过滤视图模型(显示为模态视图控制器)时,我遇到了问题。

我第一次打开模式视图时,一切正常,我可以关闭它,所有导航仍然有效。但是,当我再次尝试打开它时,会出现模态视图,并且应用程序将在几秒钟后冻结并崩溃。

这是处理模态导航请求的自定义演示器(它是 MvxModalSupportTouchViewPresenter 的子类)的代码:

public override void Show (IMvxTouchView view)
{
    if (view is IMvxModalTouchView) {
    var newNav = new UINavigationController ();
    newNav.PushViewController (view as UIViewController, false);
    newNav.NavigationBar.TintColor = UIColor.Black;
    PresentModalViewController (newNav, true);
    return;
...

(取自MvvmCross Using a modal ViewController from a Tab

我通过在视图本身中将其关闭来关闭模式。有谁知道为什么应用程序崩溃了?

4

1 回答 1

1

通过电子邮件跟进此事是...

“至于我之前的问题,我发现了错误在哪里。与我的模态视图模型相关联的视图进入了 Dispose() 调用的无限循环。只有在模态显示多次时才会发生这种情况。注释掉 Dispose( ) 方法允许我多次打开它。”

目前不确定这是否是 mvx 框架或应用程序代码中的错误 - 但我想我会在这里发布它以防它帮助其他人

于 2012-09-06T11:08:37.053 回答