【发布时间】:2014-04-24 00:12:58
【问题描述】:
我有一个名为overlay.xml 的钛合金视图,它没有控制器。我在另一个名为episode.js 的控制器中创建它,并将其添加到episode.xml 中的容器中。我这样做是为了使overlay.xml 成为可以在任何地方添加的可重用视图。
例如
episode.js
// create the overlay view
var overlay = Alloy.createController("overlay").getView();
// add it somewhere in episode.xml
$.episodeImage.add(overlay);
在overlay.xml 内部,我有几个组件,例如按钮和标签,我想在Episode View 中访问它们以添加事件侦听器。例如:
overlay.xml
<Alloy>
<View id="overlay">
<Button id="theButton" title="Click Me!" />
<Label id="theLabel" text="I am a label" />
</View>
</Alloy>
然后以 episode.js 为例:
var overlay = Alloy.createController("overlay").getView();
$.episodeImage.add(overlay);
// EXAMPLE: Get the button from overlay.xml and add an event listener
$.theButtonFromOverlayXML.addEventListener("click", function () {
alert("You clicked the button from overlay.xml!"):
});
可以这样做吗?
【问题讨论】:
标签: titanium appcelerator titanium-alloy