我不知道我是做得对还是使用了任何好的做法,但我试图要求并在我的观点上添加观点。
但是我的index.xml中有一个视图容器
<View id="containerDays" layout="vertical" height="Titanium.UI.SIZE">
<Require id="requiredDay" src="NewDay"/>
</View>
<Label id="buttonAddDay" class="button" >Adicionar outro dia</Label>
也在index.js上我有:
$.buttonAddDay.addEventListener("click", addNewDay);
function addNewDay () {
var novoDia = $.getView("NewDay");
$.containerDays.add(novoDia);
}
我也在这里查看另一个文件夹:
/app/views/NewDay.xml
并且该视图内部是一个简单的输入
<Alloy>
<View class="containerNewDay" layout="vertical" height="Titanium.UI.SIZE">
<TextField id="Day" >write a new day</TextField>
</View>
</Alloy>
总结一切,
我正在尝试在我的$ .containerDay中添加我的$ .containerNewDay,但我没有使用getView()或.open()
我将不得不使用所有文本字段项目将其发送到服务器,如何设置ID,但遗憾的是我不知道如何在appcelerator上执行此操作。
答案 0 :(得分:1)
回答上面的答案,你是否包含原始代码块中的.add方法?所以它应该是:
$.buttonAddDay.addEventListener("click", addNewDay);
function addNewDay () {
var novoDia = Alloy.createController("NewDay").getView();
$.containerDays.add(novoDia);
}
或更好,将是:
function addNewDay () {
$.containerDays.add(Alloy.createController("NewDay").getView());
}
因为这不会让指针对视图开放。
如果你想让它更干净:
$.buttonAddDay.addEventListener("click", function addNewDay () {
$.containerDays.add(Alloy.createController("NewDay").getView());
});
或者如果你想坚持纯粹的&#34;合金方式,然后保留 addNewDay 功能,只需在按钮XML中添加 onClick =&#34; addNewDay&#34; 处理程序。
至关重要的是,请记住,您需要包含视图 ContainerDays 才能拥有水平的布局,否则您添加的视图将只是位于彼此的顶部
答案 1 :(得分:0)
变化:
$.buttonAddDay.addEventListener("click", addNewDay);
function addNewDay () {
var novoDia = $.getView("NewDay");
}
要:
$.buttonAddDay.addEventListener("click", addNewDay);
function addNewDay () {
var novoDia = Alloy.createController("NewDay").getView();
}