我创建了一个自定义字段,用于从网址加载图片。我想要做的是让字段占用空间,然后在加载图像时将其自身调整为图像的大小。我几乎已经完成了所有工作但是我无法找到一种方法来在加载图像后重新完成布局。如果我事先指定图像的大小,它可以工作。在父屏幕上调用invalidateLayout将不起作用,因为屏幕可见,但只是调用invalidate什么都不做。我必须采取哪些步骤才能调整字段大小?
如果我可以在自定义视图而不是父视图上调用该方法,这也是更好的选择,但这不是必需的。
这适用于黑莓4.5.0。
答案 0 :(得分:1)
首先,您必须使父管理器无效,因为它确实需要自定义字段的新大小才能正确地重新绘制整个管理器。 (如果在自定义之后管理器中还有其他字段,或者甚至是滚动字段)。
在我的脑海中,您可以尝试实施以下两种解决方案:
- 或 -
回答您的评论:
然后你应该使用synchronized范围:
synchronized(UiApplication.getUiApplication().getEventLock())) {
// UI Code here
}
基本上在此范围内,您应该只使用无效,在此次通话之前在其他地方进行尺寸更改。