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

相關問題