如何从弹出回调中解除ViewController

时间:2013-06-24 08:49:41

标签: appconkit

我正在创建一条弹出消息,并通过按钮向该动作显示此弹出窗口。 现在我试图从弹出回调中解除SplitViewController,显示弹出窗口。 但在我的情况下它失败了,那么如何正确地做到这一点呢?

function showPopUp
{
        var popup = vMobileController.solutionController().createPopUp();
    popup.setMessage("Testmessage?");
    popup.setTitle("test");
    popup.addOption("yes",popupYES);
    popup.addOption("no",popupNO);
    popup.show();
}


function popupNO()
{
        var vSolutionController = vMobileController.solutionController();
var vDatamanager = vMobileController.dataManager();
var vLogger = vMobileController.logger();

var currViewC = vSolutionController.rootViewController().firstSubViewControllerByName("overview_split");
currViewC.dismissModal();

}


function popupYES()
{

}

1 个答案:

答案 0 :(得分:1)

模态呈现控制器永远不是根视图控制器的子控制器。要访问模态呈现的控制器,请使用解决方案控制器本身的访问方法。

var vSolutionController = mobileController.solutionController();
var vControllertoDismiss = vSolutionController.findFirstViewController("overview_split");
if (vControllertoDismiss) {
    vControllertoDismiss.dismissModal();
} else {
    logger.debug("Coun't find controller overview_split");
}

如果这也找不到您的控制器,您可能拼错了控制器名称?使用Screens.overview_split让ACK自动填充屏幕名称。

var vControllertoDismiss = vSolutionController.findFirstViewController(Screens.overview_split);