이번 시간에는 레이아웃 배경 색상에 애니메이션
적용하는 방법에 대하여 알아보겠습니다.
- 설명 -
drawable파일에 색상을 정해줍니다.
res -> drawable 클릭 -> 마우스 오른쪽 -> new -> Drawable Resource File
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="225"
android:startColor="#e63946"
android:endColor="#f1faee"/>
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid
android:color="#e63946"/>
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="315"
android:startColor="#1d3557"
android:endColor="#e63946"/>
</shape>
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@drawable/background_1"
android:duration="2000"/>
<item
android:drawable="@drawable/background_2"
android:duration="2000"/>
<item
android:drawable="@drawable/background_3"
android:duration="2000"/>
</animation-list>
- 설명 -
레이아웃에 만들어놓은 background_list를 적용합니다.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/mainLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background_list"
tools:context=".MainActivity">
</RelativeLayout>
- 설명 -
1. AnimationDrawable타입의 변수에 에 layout.getBackground()을 적용
2. 애니메이션 설정을 합니다.
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RelativeLayout layout = findViewById(R.id.mainLayout);
//애니메이션 초기화
AnimationDrawable animationDrawable = (AnimationDrawable) layout.getBackground();
//드로어블 들어갈 때 지속시간
animationDrawable.setEnterFadeDuration(2500);//2.5초
//드로어블 나갈 때 지속시간
animationDrawable.setExitFadeDuration(5000); //5초
//실행
animationDrawable.start();
}//onCreate
}//MainActivity
2022.04.13 - [안드로이드] - [안드로이드] RecyclerView 다중 화면 적용하는 방법
2022.04.12 - [안드로이드] - [안드로이드] 프래그먼트(Fragment)에서 액티비티(Activity) 데이터 전달하는 방법
2022.04.11 - [안드로이드] - [안드로이드] 액티비티(Activity)에서 프래그먼트(Fragment) 데이터 전달하는 방법
[안드로이드] LinearLayout 쉽게 사용하는 방법 (0) | 2022.04.16 |
---|---|
[안드로이드] 클립보드(Clipboard) 텍스트 복사(Copy)&붙여넣기(paste) 하는 방법 (0) | 2022.04.15 |
[안드로이드] RecyclerView 다중 화면 적용하는 방법 (0) | 2022.04.13 |
[안드로이드] 프래그먼트(Fragment)에서 액티비티(Activity) 데이터 전달하는 방법 (0) | 2022.04.12 |
[안드로이드] 액티비티(Activity) 에서 프래그먼트(Fragment) 데이터 전달하는 방법 (0) | 2022.04.11 |
댓글 영역