본문 바로가기
+)기록/과제

정리사항 3 - 실시간시계(textClock), 애니메이션

by AppJinny 2023. 2. 16.

*실시간 시계

-레이아웃에서 textClock 사용

https://developer.android.com/reference/android/widget/TextClock

 

TextClock  |  Android Developers

 

developer.android.com

 

*애니메이션

1. 회전 (rotate) : 중심점(pivot)을 기준으로 회전하는 애니메이션

2. 크기 (scale) : 중심점(pivot)을 기준으로 크기가 커지거나 줄어드는 애니메이션

3. 투명도 (alpha) : View가 흐려지거나 다시 진해지는 애니메이션

4. 이동 (translate) : View가 상,하,좌,우로 이동하는 애니메이션

5. 복합 애니메이션 (set) : 여러 애니메이션을 중첩하는 애니메이션

 

-(적용)

-시계방향으로 이동하면서 투명하게 적용

-res - anim폴더 생성 - top, right, bottom, left 생성 - 각 실행 코드 작성

*top

-<translate />: 0.3초 이동, x축 왼쪽에서 시작 후 x축 오른쪽 끝까지 이동

-<alpha />: 0.3초 동안 투명도 1에서 0으로 투명하게

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:duration="300"
        android:fromXDelta="0"
        android:toXDelta="100%"/>

    <alpha
        android:duration="300"
        android:fromAlpha="1.0"
        android:toAlpha="0.0"/>

</set>

 

*right

-<translate />: 0.3초후에 동작, 0.3초 이동, y축 맨위에서 시작 후 y축 아래 끝까지 이동

-<alpha />: 0.3초후에 동작, 0.5초(단말기의 세로길이가 더 길어서 0.2초 추가함) 동안 투명도 1에서 0으로 투명하게

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:startOffset="300"
        android:duration="300"
        android:fromYDelta="0"
        android:toYDelta="100%"/>

    <alpha
        android:startOffset="300"
        android:duration="500"
        android:fromAlpha="1.0"
        android:toAlpha="0.0"/>

</set>

 

*bottom

-<translate />: 0.6초후에 동작, 0.3초 이동, x축 오른쪽에서 시작 후 x축 왼쪽 끝까지 이동

-<alpha />: 0.6초후에 동작, 0.3초동안 투명도 1에서 0으로 투명하게

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:startOffset="600"
        android:duration="300"
        android:fromXDelta="100%"
        android:toXDelta="0"/>

    <alpha
        android:startOffset="600"
        android:duration="300"
        android:fromAlpha="1.0"
        android:toAlpha="0.0"/>

</set>

 

*left

-<translate />: 0.9초후에 동작, 0.3초 이동, y축 맨아래에서 시작 후 y축 위쪽 끝까지 이동

-<alpha />: 0.9초후에 동작, 0.5초(단말기의 세로길이가 더 길어서 0.2초 추가함) 동안 투명도 1에서 0으로 투명하게

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">

    <translate
        android:startOffset="900"
        android:duration="300"
        android:fromYDelta="100%"
        android:toYDelta="0"/>

    <alpha
        android:startOffset="900"
        android:duration="500"
        android:fromAlpha="1.0"
        android:toAlpha="0.0"/>

</set>

 

*애니메이션 적용

-이미지뷰에 애니메이션 적용

--AnimationUtils.loadAnimation

--startAnimation

ImageView ivResultAnimTop = activity.findViewById(R.id.ivResultAnimTop);

final Animation resultAnimTop = AnimationUtils.loadAnimation(activity.getApplicationContext(), R.anim.result_top);
ivResultAnimTop.startAnimation(resultAnimTop);
ivResultAnimTop.setVisibility(View.INVISIBLE);

 

 

*참고

https://m.blog.naver.com/tkddlf4209/220700530627

 

[Android] 안드로이드 애니메이션(Animation)효과 주기 트윈애니메이션(TweenAnimation)

오늘은 트윈애니메이션(TweenAnimation)을 사용해 보도록 하겠습니다. * 트윈애니메이션 : 위치나 크기, ...

blog.naver.com

 

-애니메이션 적용

https://hijjang2.tistory.com/142

 

[Android] 애니메이션 사용법(1.종류)

- Android에는 원하는 애니메이션 유형에 따라 다양한 애니메이션 API가 있습니다. - UI에 모션을 추가할 수 있는 다양한 방법. 1.비트맵 애니매이션 (드로어블 그래픽 애니메이션화) 2.UI 가시성 및

hijjang2.tistory.com

 

https://mainia.tistory.com/2861

 

안드로이드(Android) 다양한 애니메이션 이동(translate) 을 구현하는 여러가지 방법

안드로이드(Android) 다양한 애니메이션 이동(translate) 을 구현하는 여러가지 방법 환경: Eclipse Mars, Android 4.2.2 안드로이드에서 화면이나 컨트롤, 위젯 등을 이동할 때 애니메이션 효과를 얻고 싶

mainia.tistory.com