ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Drawer, LinearLayout,twin animation(트윈에니메이션)
    program_language 및 궁금한것/Android Studio 2018. 5. 14. 11:10

    Twin animation

    Scale - 확대/축소

    Translate - 위치 이동

    Rotate - 회전

    Alpha - 투명도

    Set - 집합(여러가지 애니메이션을 같이 사용할때 사용)
    Interpolator - 추가적인 속성

    사용법은 프로젝트폴더 - res - anim(만들어도됨) 에 xml파일을 생성



    Drawer는 왼쪽 상단의 메뉴같은것

    첫부분 RelativeLayout을 DrawerLayout으로 변경함

    그 안에 ImageView와 LinearLayout을 넣음


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?xml version="1.0" encoding="utf-8"?>
    <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/drawer"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.example.jinsi.imagetest.MainActivity">
     
        <ImageView
            android:id="@+id/mainIv"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_centerInParent="true"
            android:src="@drawable/cat" />
        <LinearLayout
            android:layout_width="match_parent"
            android:orientation="horizontal"
            android:layout_gravity="start"
            android:background="#ff0000"
            android:layout_height="match_parent">
     
        </LinearLayout>
     
     
    </android.support.v4.widget.DrawerLayout>
    cs


    알파 xml을 따로 만듬.

    투명도를 from에서 to로 가는 시간 지정



    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android"
        android:fillAfter="true">
     
        <alpha
            android:duration="3000"
            android:fromAlpha="0.0"
            android:toAlpha="1.0" />
    </set>
    cs


    xml파일 생성 후 java코드로 로드시키자!

    implements를 해준후

    DrawerLayout을 선언


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    package com.example.jinsi.imagetest;
     
    import android.support.v4.view.GravityCompat;
    import android.support.v4.widget.DrawerLayout;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.animation.Animation;
    import android.view.animation.AnimationUtils;
    import android.widget.ImageView;
     
    public class MainActivity extends AppCompatActivity implements View.OnClickListener {
        DrawerLayout drawer;
     
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            drawer=(DrawerLayout)findViewById(R.id.drawer);
            ImageView mainIv=(ImageView) findViewById(R.id.mainIv);
            Animation animation // 에니메이션 파일을 로드
                    = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.alqha);
            mainIv.startAnimation(animation);
            mainIv.setOnClickListener(this);
    //        drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_OPEN);
        }
     
        @Override
        public void onClick(View view) {
            if(!drawer.isDrawerOpen(GravityCompat.START)){
                drawer.openDrawer(GravityCompat.START);
            }
     
        }
    }
     
    cs

    http://codeman77.tistory.com/68

    여기를 참고해서 만듬

    반응형

    'program_language 및 궁금한것 > Android Studio' 카테고리의 다른 글

    안드로이드 버튼 클릭시 액티비티 변환  (0) 2018.05.22
    정렬과 클릭  (0) 2018.05.17
    Log란 무엇일까?  (0) 2018.05.13
    레이아웃시에  (0) 2018.05.13
    dp의 개념  (0) 2018.05.13

    댓글

Designed by Tistory.