Skip to content

Commit c88feea

Browse files
committed
prevent repeated onMeasure from doing too much work
1 parent 911f130 commit c88feea

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/com/xiegeo/cssr/Preview.java

+5-1
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ private void setUp() {
5959
}
6060

6161
public void setCamera(Camera camera) {
62+
Log.i(TAG, "set camera");
6263
mCamera = camera;
6364
if (mCamera != null) {
6465
mSupportedPreviewSizes = mCamera.getParameters().getSupportedPreviewSizes();
@@ -100,6 +101,9 @@ protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
100101

101102
//Toast.makeText(Main.me, width+","+height, Toast.LENGTH_SHORT).show();
102103
setMeasuredDimension(width, height);
104+
if(mtargetWidth == width && mtargetHeight == height){
105+
return;
106+
}
103107
mtargetWidth = width;
104108
mtargetHeight = height;
105109
if (mSupportedPreviewSizes != null) {
@@ -113,7 +117,7 @@ protected void onLayout(boolean changed, int l, int t, int r, int b) {
113117
if (mPreviewSize == null) {
114118
Log.e(TAG, "onLayout:no preview size");
115119
}else{
116-
Log.i(TAG, "onLayout mPreviewSize:"+mPreviewSize.width);
120+
Log.i(TAG, "onLayout changed:"+changed+" mPreviewSize:"+mPreviewSize);
117121
}
118122
if (changed && getChildCount() > 0) {
119123
final View child = getChildAt(0);

0 commit comments

Comments
 (0)