번역 애니메이션을 사용하여 이미지 뷰를 추적합니다. 처음에는 특정 세트의 점을 변환하는 데 이미지 뷰를 사용하고 있지만 그럴 수는 없습니다. 코드가 ondraw 메서드에 있습니다.이미지 뷰가 경로를 추적하지 않습니다.
@Override
public void onDraw(Canvas canvas) {
Log.w(this.getClass().getName(),"onDraw of Balls called");
super.onDraw(canvas);
mCanvas = canvas;
canvas.drawLine(0, 240, 160, 0, mPaint);
canvas.drawLine(160, 0, 320, 240, mPaint);
mBal = (ImageView)findViewById(R.id.strike);
TranslateAnimation mTrans = new TranslateAnimation(0, 240, 160, 0);
mTrans.setDuration(6000);
mTrans.setFillEnabled(true);
mTrans.setFillAfter(true);
mTrans.start();
}
PLZ 도움이됩니다.
============================================== ===============
편집 1 : -
이 내 수정 된 코드는하지만 번역이 도움이 working.PLz하지 여전히
@Override
public void onDraw(Canvas canvas) {
Log.w(this.getClass().getName(),"onDraw of Balls called");
BallsOnDraw(canvas);
}
void BallsOnDraw(Canvas canvas)
{
canvas.drawLine(0, 240, 160, 0, mPaint);
canvas.drawLine(160, 0, 320, 240, mPaint);
TranslateAnimation mTrans = new TranslateAnimation(0, 320, 0,240);
mTrans.setDuration(6000);
SitoliaActivity.mBal.startAnimation(mTrans);
}
감사합니다! 사용자 정의보기를 그릴 것을 제안한 다른 접근 방법은 해당보기를 현재 사용자 정의보기의 하위로 만들어야한다는 의미입니다. – Ruchira
you.i.e에서 제안한 첫 번째 접근 방식을 사용하여 수정 된 코드를 추가했습니다. TranslateAnimation을 사용하십시오. 그러나 여전히 작동하지 않습니다 .plz help – Ruchira
두 번째 접근법의 경우 두 번째 사용자 정의보기를 만들지 말고 기존의보기를 편집하십시오. 두 번째 접근법에서는 문제를 일으키는 많은 것들이있을 수 있습니다. 예를 들어 모든 onDraw 호출에서 애니메이션을 시작하면 항상 다시 시작합니다. 하지만이 솔루션에 대한 충분한 경험이 없습니다. 다른 솔루션에 대한 예제를 추가했습니다. –