안드로이드 인텐트(Intent)

Intro

인텐트(Intent)란

인텐트

인텐트란 Component 간 데이터를 주고받기 위한 메시지 객체이며 명시적 인텐트와 암시적 인텐트로 나눌 수 있다.

명시적 인텐트(Explicit)

클래스 객체나 컴포넌트 이름을 명확히 지정할 때 사용하는 방법

예제

fab.setOnClickListener(new View.OnClickListener() // 일정 추가 버튼 클릭시
        {
            @Override
            public void onClick(View v)
            {
                Intent intent = new Intent(getActivity(), addschedule.class); // 일정 추가 액티비티 생성
                startActivity(intent);
            }
        });

플로팅 액션버튼 클릭시 새로운 액티비티가 실행되는 메서드이다.

이때 새로운 액티비티는 반드시 AndroidManifest.xml에 등록해야한다.

<activity android:name=".addschedule" android:label="스케줄 추가"/>

또한 인텐트를 이용하여 데이터를 전달하려면 putExtra() 메서드를 사용한다.

intent.putExtra()

전달 받은 액티비티에선 getStringExtra(), getIntExtra() 등의 메소드로 데이터에 접근한다.

암시적 인텐트(Implicit)

암시적 인텐트는 약속된 액션을 지정하여 안드로이드에서 제공하는 기존 응용프로그램을 실행하는 것이다.

Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:/119));

위와같이 액션을 지정하고 값을 설정하면 지정된 응용프로그램이 실행된다.

실행 결과

gif

댓글남기기