如何处理Gluon PopupView?

时间:2017-03-19 22:40:27

标签: gluon gluon-mobile

我有一个ChoiceFieldComponent,它在点击时显示PopupViewPopupView的内容是一个自定义的ChoiceMenu,显示鸡尾酒成分列表。由于配方的配料数量不同,可以添加/删除ChoiceField。

当从其父View中删除ChoiceField时,似乎仍然存在强引用,这会阻止ChoiceField和ChoiceMenu收集垃圾。

我认为这是因为PopupView拥有对两个节点的引用:

popup = new PopupView(getSkinnable(), choiceMenu);

我尝试删除对choiceMenu的引用:

BorderPane container = (BorderPane) popup.lookup(".container");
container.setCenter(null);

但是仍然有PopupView.ownerNode(ChoiceField)的引用,我无法理解。 因为添加了每个ChoiceField后PopupViews的数量正在增加,我想知道是否有办法删除PopupView

0 个答案:

没有答案