구성/인텐트(Intent): 10개의 글
저번 포스팅에서는 MainActivity에서 다른 Activity를 실행하기 위해서 인텐트(Intent)를 생성하고 실행하는 액티비티에 전달하고자 하는 데이터들을 인텐트에 담아 호출하는 방법에 대해서 알아보았습니다. 이렇듯 인텐트(Intent)를 사용하면 원하는 컴포넌트(Component)를 실행하는 것이 가능한데 실행하는 방식에 있어서 명시적(Explicit) 방법과 암시적( Implicit) 방법 두 가지가 있습니다. 1. 명시적 인텐트(Explicit Intent) 먼저 명시적 인텐트에 대해서 알아보겠습니다. 명시적 인텐트는 실행할 컴포넌트의 이름과 클래스명을 말 그대로 명시적으로 작성하여 우리가 실행하고자 하는 컴포넌트가 명확할 때 사용하는 방식입니다. 이전 포스팅에서 MainActivity에서 ..
저번 포스팅에서는 액티비티(Activity)를 생성하고 실행하는 방법에 대해서 알아보았습니다. 이번 포스팅에서는 액티비티(Activity)를 실행할 때 호출되는 액티비티(Activity)에 데이터를 전달하는 방법에 대해서 알아보겠습니다. 1. 액티비티 간에 데이터 전달방법 저번 포스팅에서 액티비티를 실행할 때 인텐트(Intent)를 생성하여 사용했습니다. 실행되는 액티비티에 데이터를 전달할 때도 마찬가지로 인텐트(Intent)를 사용하게 됩니다. ▼ MainActivity에서 SubActivity를 실행하면서 데이터를 전달하는 대략적인 프로세스를 나타내는 그림입니다. MainActivity에서는 액티비티를 실행하기 위해서는 먼저 Intent 객체를 생성합니다. SubActivity에 데이터를 넘겨줄 때는..
사용자 입장에서 액티비티(Activity)를 실행하기 위해서는 단말기 화면의 앱 아이콘을 클릭하여 실행할 수 있습니다. 반면 개발자는 자신의 앱에서 다른 액티비티(Activity)를 호출하기 위해서는 인텐트(Intent)를 통해 실행할 수 있습니다. 이번 포스팅에서는 엑티비티(Activity)를 생성하고 호출하는 방법에 대해 알아보겠습니다. A 엑티비티와 B 액티비티 2개를 생성할 것입니다. 예제 구현의 최종 목표는 A 액티비티에서 특정 동작에 의해 B 액티비티를 실행하는 동작을 구현하는 게 목표입니다. 1. 엑티비티 XML 레이아웃 리소스 파일 추가 먼저 A 엑티비티와 B액티비티의 화면 UI를 정의할 xml 레이아웃 리소스 파일을 생성합니다. 경로는 /res/layout/ 경로 아래에 생성하도록 합니다..
안드로이드 4대 구성요소(Component)는 엑티비티(Activity), 서비스(Service), 콘텐트 제공자(Content Provider), 방송수신자(Brodcaster Receiver)로 이루어져 있습니다. 각각의 구성요소(Component)는 독립된 형태로 존재하며 각자가 고유의 기능을 수행하며 중간에 인텐트(intent)를 통해 상호작용을 합니다. 이번 포스팅에서는 4대 구성요소의 전체적인 개념에 대해서만 정리하고 각 구성요소에 대해서 자세한 내용을 포스팅하도록 하겠습니다. 4대 구성요소(Component) 1. 엑티비티 (Activity) 엑티비티(Activity)는 사용자 화면을 담당하는 구성요소입니다. App에서 엑티비티를 구현하기 위해서는 Activity Class를 상속받아야 하며..
오타가 있을 수 있습니당 !! [안드로이드] intent를 이용한 화면전환 새로운 액티비티를 시작하려면, 1. 액티비티 시작을 유도할 View를 결정/생성 2. 새로운 액티비티를 생성 - Java class를 생성 - Layout을 위한 xml 파일 생성 - string XML 파일을 수정 3. AndroidManifest.xml에 해당 액티비티를 등록 4. 기존 액티비티에서 새로운 액티비티를 시작 실습 - intent를 이용한 화면 전환 : 기존의 액티비티(IntentDemo)에서 Next버튼을 누르면 새로운 액티비티(IntentDemo2) 시작 : 새로운 액티비티에서 Back 버튼을 누르면 기존 액티비티로 전환 1. 액티비티 시작을 유도할 view를 생성(activity_intentdemo.xml) ..
[안드로이드] Intent(4) - 인텐트 플래그를 이용한 Activity 스택 관리 4. 인텐트 플래그를 이용한 Activity 스택 관리 => 사용법 : intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); ▪ FLAG_ACTIVITY_SINGLE_TOP : 호출하는 Activity가 자신을 다시 호출 할 경우, 기존의 Activity를 재활용한다. ▪ FLAG_ACTIVITY_NO_HISTORY : 설정된 Intent로 시작된 Activity B는 스택에 그 흔적을 남기지 않게 된다. ▪ FLAG_ACTIVITY_REORDER_TO_FRONT : 실행하고자 하는 Activity가 존재하면 생성대신 순서를 가장 위로 올린다. ▪ FLAG_ACTIVITY_CLEAR_..
[안드로이드] Intent(3) - 암시적 인텐트(Implicit intent) 3. 암시적 인텐트(Implicit intent)=> 명시적 인텐트와 달리 액션, 카테고리, 데이터와 같은 특징을 포함하고 있는 방식=> 암시적 인텐트는 인텐트 해석 과정이 필요=> 인텐트 조건에 맞는 컴포넌트를 찾기 위해 각 컴포넌트에 정의된 인텐트 필터를 검색 (1) 암시적 인텐트 사용예 ▪ 전화기 걸기 12Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse(“tel:010-1234-5678”)); startActivity(intent);Colored by Color Scriptercs ▪ 메일 보내기 12Intent intent = new Intent(Intent.ACT..
[안드로이드] Intent(2) - 명시적 인텐트(Explicit intent) 2. 명시적 인텐트(Explicit intent)=> 호출하거나 메시지를 보낼 대상 컴포넌트 이름을 지정하는 방식=> 주로 애플리케이션 내의 컴포넌트 호출 및 데이터 전달 시 사용=> 인텐트 필터가 정의 되어 있지 않더라도 컴포넌트를 호출 및 메시지를 전달 할 수 있음 (1) startActivity ▪ 다른 액티비티 호출//다른 액티비티 호출Intent intent = new Intent(MainActivity.this, SecondActivity.class);startActivity(intent); ▪ 다른 액티비티에 값 전달=> 거의 모든 타입에 대해 오버로딩되어 있으며 배열이나 객체까지 저장가능//다른 액티비티에 값 ..
[안드로이드] Intent(1) - 인텐트(Intent) 개요 1. Activity 간 통신 - Intent 개요: 애플리케이션 내부와 애플리케이션 간의 메시지를 전달 할 때 사용된다. : 안드로이드 기기 내의 모든 애플리케이션 컴포넌트 간의 상호작용을 할 수 있다. ▪ 명시적 인텐트(Explicit intent): 호출하거나 메시지를 보낼 대상 컴포넌트 이름을 지정하는 방식 //명시적 인텐트 예Intent intent = new Intent(MainActivity.this, SecondActivity.class);startActivity(intent); ▪ 암시적 인텐트(Implicit intent): 명시적 인텐트와 달리 액션, 카테고리, 데이터와 같은 특징을 포함하고 있는 방식 //암시적 인텐트 예..
23456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145// 웹페이지 띄우기Uri uri = Uri.parse("http://www.google.com");Intent it = new ..