android:onMeasure经常被调用

时间:2012-01-06 13:30:35

标签: android

我目前正在开发一款相机应用,我必须根据(全屏)应用视图的大小设置相机预览尺寸。该过程包括等待onMeasure事件获取视图的大小,考虑其他几个参数(填充,相机图片大小......)计算正确的大小。

问题是:onMeasure被调用至少5次,并且在具有800x400屏幕分辨率的设备上多次给出奇怪的分辨率,如800x800。这并不理想,因为我每次都必须重新计算最佳大小,这会给我的应用程序带来更多复杂性,并使其变得更慢。

你知道如何改进它吗? 读取display.width()和height()会简单得多,但我想这是没有选择的,即使对于全屏应用,对吧?

1 个答案:

答案 0 :(得分:3)

您是否尝试过onSizeChange()?

这也可以不止一次调用,但我从来没有错误的尺寸......你可以放一个标志,不要多次运行添加剂操作。