-
[Android] 안드로이드 애니메이션(Animation) 구현 (4) - Alpha (투명도)안드로이드 스튜디오 2022. 9. 17. 23:59
1. Animation - Alpha 개요
애니메이션 효과 중 Alpha는 View의 투명도를 조절하는 효과를 구현합니다. 극장의 fade in과 fade out을 생각하시면 됩니다.
2. Animation - Alpha 구현 (xml)
main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical"> <ImageButton android:id="@+id/imgBtn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/light_bulb" android:background="@android:color/transparent" android:tint="#F8CA00"/> </LinearLayout>
간단히 이미지 버튼 1개를 구현했습니다.
alpha.xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="2000" android:fromAlpha="1.0" android:toAlpha="0.0" android:interpolator="@android:anim/accelerate_interpolator" /> </set>
fromAlpha: 시작 투명도
toAlpha: 종료 투명도
두 값은 1이면 완전 불투명, 0이면 완전 투명입니다.3. Animation - Alpha (Java)
MainActivity.java
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ImageButton imgBtn = findViewById(R.id.imgBtn); final Animation alpha = AnimationUtils.loadAnimation(MainActivity.this, R.anim.alpha); imgBtn.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { v.startAnimation(alpha); } }); } }
AnimationUtils.loadAnimation(Context, int): 구현할 애니메이션을 불러옴
startAnimation(Animation): 애니메이션 시작4. 실제 구현 화면
개발자 문서:
https://developer.android.com/reference/android/view/animation/RotateAnimation
'안드로이드 스튜디오' 카테고리의 다른 글
[Android] 안드로이드 DatePicker 알아보기 (0) 2022.09.18 [Android] 안드로이드 애니메이션(Animation) Interpolator 알아보기 (0) 2022.09.18 [Android] 안드로이드 Animation 구현 (3) - Scale (크기 변경) (0) 2022.09.17 [Android] 안드로이드 애니메이션(Animation) 구현 (2) -Translate(좌표 이동) (0) 2022.09.17 [Android] 안드로이드 애니메이션(Animation) 구현 (1) - Rotate (0) 2022.09.16 댓글