방법이라고 두 번 때 호출 될'의 onDraw()는 '두 번 호출됩니다. 나는 여기에 내 코드방법 '의 onDraw()가'무효 '가
package com.blsm.sss.view;
public class MoveRelativeLayout extends RelativeLayout {
private int mDelta = 0;
public MoveRelativeLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
public MoveRelativeLayout(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public void move(int delta) {
mDelta = delta;
invalidate();
Logger.d("MoveRelativeLayout", "move() delta:" + mDelta);
}
@Override
protected void onDraw(Canvas canvas) {
Logger.d("MoveRelativeLayout", "onDraw() delta:" + mDelta);
super.onDraw(canvas);
canvas.translate(0, mDelta);
}
}
이다 onDraw()
에서보기를 이동하려는하지만 난 방법 'move()
'을 호출 할 때 onDraw
가 두 번 호출됩니다. 나는 왜 그런지 모르겠다. 누가 도와 줄 수 있니?
invalidate()를 호출하지 않으면 onDraw()가 호출되는지 여부가 결정됩니다. – yushulx