我正在尝试从父视图中删除视图。当我做App.globalWindow.remove($ .wrapper);
应用程序崩溃 - xml文件看起来像
<Alloy>
<View id="wrapper">
<View id="overlay" />
<View id="content" layout="vertical">
<ScrollView id="sv_list" height="80%" layout="vertical" top="10" />
<Button id="btn_select" top="10">Select</Button>
</View>
</View>
</Alloy>
答案 0 :(得分:0)
我根据当前信息看到的唯一原因是你在其他一些.js文件中调用remove方法&amp;您希望 $ .wrapper 成为要删除的视图的ID,但 $ .wrapper 只能在该XML所属的同一.js文件中使用。
尽管如此,你仍然可以通过一个很好的解决方案来解决这个问题。
因为,在任何 Ti.UI.View 或 Ti.UI.Window 上删除方法实际上会从此视图的层次结构中删除子视图,所以你可以反向执行,意味着,获取包装器视图的父级并调用remove方法。
就像这样:
// it will always work if you intend to use remove method
var wrapperParent = $.wrapper.getParent();
wrapperParent.remove($.wrapper);
wrapperParent = null;
// OR
$.wrapper.getParent().remove($.wrapper);
如果您在Appc文档中的任何位置看不到 getParent()方法,请不要感到惊讶:)
<强>建议:强>