0

我有一个props.xml合金视图和prequal.xml合金视图(其中包含一个包含表单的视图),每个视图也都有自己的控制器。表格数据加载到props.xml后出现预先格式。如何关闭在另一个控制器中的子视图的父视图

我需要prequal表单作为模式窗口,并且由于Android和iOS对待这些不同,我不得不将preview视图放置在Android的AlertDialog和iOS的实际模式窗口内。因此,通过,通过它的androidView属性将预先形式添加到Android AlertDialog,并通过窗口的add(view)函数将其添加到iOS窗口。

但是,问题在于AlertDialog和窗口在props.js中定义,我需要能够在提交表单后关闭prequal.js这些窗口。我尝试使用与这些容器模式视图关联的id来关闭它们,但它只关闭包含表单本身的实际视图,而不是包含它的父视图。

当父视图在定义子视图的单独控制器中定义时,我如何能够关闭其子视图的父视图?

+1

我不知道我是否完全理解了这个问题,但是你可以将函数作为参数从一个视图传递到另一个视图,并从另一个“控制器”调用一个函数。 – miga

+0

对不起,我给了很多背景资料,以防万一它可能是相关的。肯定大多数是微不足道的。 基本上,父容器视图在props.js中,而子视图在prequal.js中。我需要能够从prequal.js – Rampancy

回答

1

里面winA你打开一个新的控制器通过一个回调函数:

function closeA(){ 
    $.winA.close(); 
} 

Alloy.createController("winB", { 
    closeA: closeA 
} 

winB你可以叫$.args.closeA()现在触发closeA()功能控制器winA

+0

调用父视图的关闭或隐藏函数非常感谢您的答案!在我的应用中工作得很好。 – Rampancy

相关问题