当Manager调用setPositionChild(Field)时,如何重新布局和重新绘制字段?

时间:2012-12-06 02:17:35

标签: blackberry blackberry-jde

我的课程扩展了经理并致电setPositionChild(Field f)来改变f的职位。在调用setPositionChild()方法后,如何应用位置(即重新布局和重新绘制)以便我可以看到更改?

我试图拨打invalidate(),但无效。

1 个答案:

答案 0 :(得分:2)

invalidate()只是强制重绘,它不会像你注意到的那样重做整个布局。

您可以通过上升到父Screen对象并调用invalidateLayout()来强制重新布局。强制布局几乎肯定会在您尝试移动的字段上调用setPositionChild(),因此您需要确保管理器布局代码保留新的字段位置。这可能意味着您需要编写自定义管理器。