Please Enable JavaScript!
Gon[ Enable JavaScript ]

반응형

안드로이드(Android) 코드경고 – Avoid object allocations during draw/layout operations (preallocate and reuse instead) 해제 하기

 

환경 : Eclipse Mars, Android 4.2.2

 

안드로이드 개발중 아래와 같은 경고가 나는 경우가 있을 것입니다. Draw 함수가 수행되는 중에 오브젝트 생성을 하지 말라는 말입니다.

Avoid object allocations during draw/layout operations

(preallocate and reuse instead)

 

안드로이드(Android) 코드경고 – Avoid object allocations during draw/layout operations (preallocate and reuse instead) 해제 하기

 

이것은 onDraw() 함수에 Bitmap 객체 생성을 삭제하고 클래스 생성자에 넣어 두면 해결 됩니다. 예를 들어 아래 샘플과 같이 Bitmap 객체를 생성하는 코드를 drawView 생성자 함수에 넣었습니다.

 

private class drawView extends View {
	Bitmap mBitmap = null;
	
	public drawView(Context context) {
		super(context);
		mBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.view01);
	}

	protected void onDraw(Canvas canvas) {
		canvas.drawBitmap(mBitmap, 0, 0, null);
	}
}
반응형
Posted by 녹두장군1
,