현재 반복적으로 무거운 작업이 이루어 지고 그 상태를 Custom 한 Progress 형태로

화면에 뿌릴려고 합니다. ( 무거운 작업이란 파일 복사, 삭제등.... )

문제는 반복적인 작업은 전부 이루어지는데 정작 그 상태에 대한 정보 즉

invalidate, postinvalidate 등은 이루어지지 않는것 처럼 보입니다.



if ( delCount != 0 ) { //// DELETE 
    for ( int i = 0 ; i < delete.size(); i++ ) {
     if ( delete.get(i).isClick == true ) {
      ////////////////////////////////
      //// 무거운 작업 ////
      ////////////////////////////////
      /// 이 부분에서 화면을 다시 그려야 하는데 안되네요;;
      mx += ( mxT / (float)delCount );
      postInvalidate();
      //// 캔버스 참조를 얻어서 
      ///// mCanvas.drawRect(124, 0, 124 + mx, 18, paint); 
      ///// 강제로 호출 해도 그려지지 않는것 처럼 보입니다.
     }
    }
}

Thread 도 해보고 Handler 도 해보았지만 ( 잘 다루지는 못합니다.. )

Log로 찍었을때 가장 로그가 처리 순서 대로 나오는게 현재의 코딩이었습니다.

고수분들의 답변 간절히 기다리겠습니다.


p.s onDraw(Canvas canvas) 를 가장 빠르고 확실하게 호출 할 수 있는 방법이 있습니까???

      예를 들어 onDraw의 인자값 canvas 를 참조해서 onDraw(Canvas canvas) 가 아닌 곳에서

      canvas의 참조로 그린다면 이 것이 맞는 방법이며 빠를까요???

      화면 터치에 대한 반응으로 가장 빠르게 화면에 다시 그릴 수 있는 방법이 뭘까요 ??? ( 핸드 페인팅 어플 같은 경우요 )