android app
, 에 대한 사용자 지정보기에서 작업했습니다. 애니메이션을 추가했는데 실제 전화에서 볼 때 부드럽고 emulators
에서 거친 것으로 나타났습니다.사용자 지정보기 애니메이션은 에뮬레이터에서 부드럽지만 실제 장치에서는 고르지 않습니다
그것은 GIF를 같이 명확하지 않지만 에뮬레이터가 훨씬 부드럽게이다. 이 장치가 도움이된다면 갤럭시 노트 5가 사용되었습니다.
public void animateLayout(){
ValueAnimator valueAnimator = ValueAnimator.ofInt(25,displayHeight -initHeight);
valueAnimator.setDuration(1000);
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
layoutParams = new RelativeLayout.LayoutParams(getWidth(), initHeight + (int) animation.getAnimatedValue());
setLayoutParams(layoutParams);
}
});
valueAnimator.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
}
@Override
public void onAnimationEnd(Animator animation) {
gameViewVisible = true;
animateArc();
}
@Override
public void onAnimationCancel(Animator animation) {
}
@Override
public void onAnimationRepeat(Animator animation) {
}
});
if(gameViewVisible == false) {
valueAnimator.start();
}
}
public void animateArc(){
ValueAnimator valueAnimator = ValueAnimator.ofInt(0,achievmentProgress);
valueAnimator.setDuration(achievmentProgress*(int)4.7);
valueAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
achievmentDegrees = (int)animation.getAnimatedValue();
invalidate();
}
});
valueAnimator.start();
}
다음은 내가 사용한 애니메이션입니다.
시도해 보았습니다. 작동하지 않았습니다. –