私はカスタムSurfaceViewを持っていますが、init関数はすべてのビットマップをロードしてコンストラクタから呼び出されますが、Bitmapのサイズを変更したいのですが、onMeasureの後でonDraw.Thisが私のカスタムSurfaceView内のOnMeasureメソッドです:onMeasureの後にカスタムサーフェイスビューでビットマップを割り当てる方法は?
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
measuredHeight = MeasureSpec.getSize(heightMeasureSpec);
measuredWidth = MeasureSpec.getSize(widthMeasureSpec);
scrollableBg = Bitmap.createScaledBitmap(srcScrollableBg, measuredWidth, measuredHeight, true);
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
IDEは、「オブジェクトの描画/レイアウト操作時に割り当てないでください(事前割り当てをし、代わりに再利用)」scrollableBgを割り当てるために言うが、私はいないはmeasuredWidthおよびmeasuredHeightのを持っているので、私は、initでこれを行うことはできません...