Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/211.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 生成新控制器还是使用现有控制器?钛合金SDK_Javascript_Android_Model View Controller_Titanium - Fatal编程技术网

Javascript 生成新控制器还是使用现有控制器?钛合金SDK

Javascript 生成新控制器还是使用现有控制器?钛合金SDK,javascript,android,model-view-controller,titanium,Javascript,Android,Model View Controller,Titanium,为了进一步了解MVC和Tianium SDK,我从零开始开发了一个小型Android应用程序(不使用Alloy)。 每个控制器负责构造相应的视图和模型数据 当按下按钮以显示另一个屏幕时,如何确定所请求屏幕的控制器(和视图)是否已存在?如果它已经存在,我想显示它,否则初始化一个新的控制器 var LoginController = function() { function setEventListeners ( myWindow ) { myWindow.butSettings.add

为了进一步了解MVC和Tianium SDK,我从零开始开发了一个小型Android应用程序(不使用Alloy)。 每个控制器负责构造相应的视图和模型数据

当按下按钮以显示另一个屏幕时,如何确定所请求屏幕的控制器(和视图)是否已存在?如果它已经存在,我想显示它,否则初始化一个新的控制器

var LoginController = function() {

function setEventListeners ( myWindow ) {
    myWindow.butSettings.addEventListener('click', function(e) {
        // When pressed, this should check if there is already
        // an existing "SettingsController", if not then spawn
        // a new one via "myParent.Settings = new SettingsController"
        alert("test");
    });

}

//var model = new LoginModel();
var view = new LoginView.init;
setEventListeners(view);

return view;
};

var myParent = {}; // parent object
myParent.Login = new LoginController;
myParent.Login.open();

我认为在这种情况下,您可以只说
if(!myParent.Settings){//create controller}或者{//use myParent.Settings}
。将您创建的屏幕保存到全局变量中,并在要销毁它时将其设为null。检查全局变量是否为null,否则创建它。