마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

커스텀뷰 관련 질문---------

0 추천

뷰를 커스텀하여 만들고, onDraw에서 두개의 사각형을 만들었습니다.

이 중에 한 사각형만 애니메이션을 적용할 수 있는 방법이 있나요?

애니메이션은 아래와 같이 구현하였습니다.

  

ObjectAnimator animatorY = ObjectAnimator.ofFloat(this, View.SCALE_X, startScale, endScale); // 확대
animatorY.setDuration(700);
animatorY.start();
슈퍼꽃붕어 (1,600 포인트) 님이 2015년 11월 2일 질문

1개의 답변

0 추천
view 에 flag 를 하나 두고 설정했을 때 animation 이 동작하도록 설정하면 되겠는데요
aucd29 (218,390 포인트) 님이 2015년 11월 2일 답변
저 소스의 this가 뷰 자체에요. 뷰 안에서 그 자체에 애니메이션을 적용시켰는데 어떻게 flag를 둘수있을까요?
YourView 라 치면

YourView v1, v2;

v1 = new YourView(); // normal view
v2 = new YourVIew();
v2.setMethodForAnimation(); // animation start

식으로 하면 되는데 다른걸 원하시는건가요?
setMethodForAnimation 내부에 ObjectAnimator 를 target 을 this 로 하고 말이죠 ;)
넵 제가 생각하는 그건 아닌거 같네요 ㅠㅠ 예제로 만든 소스를 첨부하려했지만.. 그냥 지웠습니다. 양해부탁드려요..ㅎ
뷰를 두번만들어서 사각형을 두개 만드는 것이 아니라, 뷰 하나에 사각형이 두개 들어있습니다. 제가 이해를 잘못한 걸까요??...ㅠ
onDraw에서 두개의 사각형을 만들었습니다. 가 Paint 로 직접 그렸다는 이야기인가요???
ObjectAnimator 를 생각하시길래 View 를 instance 했다고 이해했는데

직접 draw 한거라면 좌표를 일일히 변경해서 하는 수 밖에 없습니다. thread 하나 돌려서 말이죠.
넵 canvas.drawRect(left,top,right,bottom,paint);  이렇게 그렸습니다.. 담부터 질문 제대로 하겠습니다 감사합니다..
쓰레드로 구현 완료하였습니다. 감사합니다.
...