반응형
| Pinwheel (바람개비)
설명 : 바람개비가 일정한 속도로 계속 회전하는 애니메이션
어플리케이션 이름은 Pinwheell 어플리케이션 라벨은 바람개비로 한다.
바람개비가 2초간 360도를 같은 속도로 회전하며, 애니메이션을 계속 반복함(계속 회전)
모듈 | 폴더 | 소스 파일 | 편집 내용 |
manifests | AndroidManifest.xml | ||
Java | Com.example.yschang.pinwheel1 | MainActivity.java | 바람개비 이미지 회전 |
Res | Drawable | Pinwheel.png | 바람개비 이미지 |
Layout | Activity_main.xml | 바람개비 이미지 중앙 배치 | |
Values | String.xml | 어플리케이션 라벨 수정 |
l Match_parent: 화면전체
l Wrap_content: 본인의 이미지 크기만큼
| String.xml
<resources>
<string name="app_name">바람개비1</string>
</resources>
Activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<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:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/pinwheel"
android:src="@drawable/pinwheel" />
</RelativeLayout>
| MainActivity.java
package com.example.myapplication;
import android.animation.ObjectAnimator;
import android.animation.ValueAnimator;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.animation.LinearInterpolator;
import android.widget.ImageView;
public class MainActivity extends AppCompatActivity {
@Override
/*MainActivity 자바 클래스가 호출할 때 처음 실행되는 메소드*/
protected void onCreate(Bundle savedInstanceState) {
/*액티비티 생성*/
super.onCreate(savedInstanceState);
/*activity_main.xml에서 정의된 화면 레이아웃을 액티비티에 출력*/
setContentView(R.layout.activity_main);
/*id가 pinwheel인 이미지를 인식함*/
ImageView iv_pingwhell =(ImageView)findViewById(R.id.pinwheel);
/*인식한 이미지를 360도 회전시키는 애니메이션 객체 생성*/
ObjectAnimator object = ObjectAnimator.ofFloat(iv_pingwhell, "rotation",360);
/*일정한 속도로 움직이게 함*/
object.setInterpolator(new LinearInterpolator());
/*애니메이션 시간을 2초로 설정*/
object.setDuration(2000);
/*애니메이션을 무한번 반복하도록 설정*/
object.setRepeatCount(ValueAnimator.INFINITE);
/*애니메이션을 실행함*/
object.start();
}
}
| 결과
[관련 게시글]
[Android] 안드로이드 스튜디오 설치 : https://seul96.tistory.com/58 [Android] 바람개비 회전 애니메이션 : https://seul96.tistory.com/62 [Android] 화면터치 시 이미지 따라오기 : https://seul96.tistory.com/310 [Android] 그림 글 배치 : https://seul96.tistory.com/63 [Android] 글의 목록 만들기 : https://seul96.tistory.com/311 [Android] manifests, java, res / 레이아웃 유형 : https://seul96.tistory.com/64 [Android] toast 배경색 변경 방법 + 색상표 : https://seul96.tistory.com/65 [Android] 계산기 구현 : https://seul96.tistory.com/66 [Android] 위치 배열 gravity linear layout relative layout 사용 : https://seul96.tistory.com/67 [Android] 액티비티 전환 intent 예시 + 4대 컴포넌트 : https://seul96.tistory.com/68 [Android] 이벤트 처리와 액티비티간 이동 : https://seul96.tistory.com/70 [Android] 리스트뷰 : https://seul96.tistory.com/79 [Android] 커스텀 리스트뷰 : https://seul96.tistory.com/80 [Android] 안드로이드 공공데이터(API) 사용하는 방법 : https://seul96.tistory.com/85 [Android] Padding/layout_margin, visibility 속성 : https://seul96.tistory.com/312 |
반응형
'JAVA > Android' 카테고리의 다른 글
[Android] Calculator(계산기) (0) | 2019.04.29 |
---|---|
[Android] 토스트(Toast) / 배경색 변경 방법 + 색상표 (0) | 2019.04.29 |
[Android] manifests, java, res / 레이아웃 유형 (0) | 2019.04.25 |
[Android] 명화와 제목, 작가, 설명 배치 고흐(Gogh) (0) | 2019.04.25 |
Android studio install (0) | 2019.04.04 |
댓글