2017-03-29 1 views
1

현재 나는이 애니메이션 어떻게안드로이드 setBackground의 애니메이션

BitmapDrawable bd = new BitmapDrawable(getResources(), mBlurredMap); 
mLytProfileCover.setBackground(bd); 

를 사용하여있는 LinearLayout의 배경을 설정? 예를 들어 배경의 알파가 500ms에서 0에서 1로 변하는 페이드 인 애니메이션입니다.

감사합니다.

+0

안드로이드의 모든 것이 저에게 너무 정적 인 것처럼 보이기 때문에 좋은 질문입니다. 그리고 CustomViews를 사용하는 경우 많은 것들이 발생합니다 ... – statosdotcom

답변

1
ObjectAnimator alphaAnimator = ObjectAnimator.ofFloat(mLytProfileCover, View.ALPHA, 0.0f, 1.0f); 
alphaAnimator.addListener(new AnimatorListenerAdapter() { 
    @Override 
    public void onAnimationStart(final Animator animation) { 
     mLytProfileCover.setBackground(bd); 
    } 
}); 
alphaAnimator.setDuration(500); 
alphaAnimator.start(); 
+0

이것은 전체 LinearLayout 가시성을 0에서 1로 변경합니다. 선형 레이아웃 내의 내용이 아닌 배경 만 변경하는 방법을 찾고 있습니다. – windchime

+0

@windchimez는 레이아웃의 첫 번째 자식으로'View'를가집니다. 배경을'View'로 설정하고, 레이아웃이 아닌 애니메이션을 적용하십시오. – azizbekian