10. 액티비티와 인텐트 제목. 10. 액티비티와 인텐트 제목 액티비티의 개념을 파악한다. 인텐트의 개념과 활용법을 익힌다. 액티비티 생명주기에 대해 알아본다.

Slides:



Advertisements
Similar presentations
Page  1 Copyright© Hanbit Media, Inc. All rights reserved. IT CookBook, 안드로이드 프로그래밍 본 강의교안은 수업상황을 도입 - 전개 - 마무리로 구분하여 수업의 각 단계에서 필요한 요소 중 강의교안으로.
Advertisements

Android Tutorial 안드로이드 SDK 설치 및 기초 프로그래밍 강좌입니다 서울대학교 네트워크 융합 및 보안 연구실 권 윤
IT CookBook, Android Studio 를 활용한 안드로이드 프로그래밍 Copyright© 2015 Hanbit Academy, Inc. All rights reserved. 14. 서비스와 브로드캐스트 리시버.
스마트폰 화면에서 안드로이드 마켓을 클릭하여 접속합니다. [그림 1-1] 안드로이드 전용 어플리케이션 설치 방법 1. 굿바이 학교폭력 Mobile App 설치 안드로이드폰 설치 방법 마켓에서 검색 아이콘을 클릭 하여 검색창을 활성화 합니다. 굿바이 학교폭력 어플명을 입력.
Android 프로그램개발 환경. 학습 목표 ■ 교육 목표  JDK 설치  JDK 환경 설정  Eclipse 설치  Android SDK 설치  ADT Plug-in 설치  Android Virtual Device(AVD) 설치  Android 예제 프로그램.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
OpenCV 안드로이드 연동 환경설정 OpenCV-Android 를 다운 받습니다.
04. 기본 위젯 익히기 제목. 04. 기본 위젯 익히기 제목 뷰와 뷰 상속을 이해한다. 기본 위젯을 다루는 방법을 익힌다. 안드로이드 앱의 기본적인 프로그래밍을 숙달한다.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
02. 처음으로 만드는 안드로이드 애플리케이션 제목.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
Power Java 제3장 이클립스 사용하기.
02. 처음으로 만드는 안드로이드 응용 프로그램 제목. 02. 처음으로 만드는 안드로이드 응용 프로그램 제목.
08. 파일 처리 제목. 08. 파일 처리 제목 파일 처리 방식을 익힌다. SD카드의 파일 처리 방식을 배운다. 커스텀뷰의 작성법을 살펴본다.
J2ME Install 부산대학교 인공지능 연구실.
네트워크 스캔하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
CHAP 24. nfc와 앱위젯.
Activity 액티비티는 안드로이드 응용 프로그램을 구성하는 4가지 컴포넌트 중 하나로 가장 빈번히 사용되며 사용자를 대면한다는 면에서 실질적으로 가장 중요한 요소 화면 하나에 대응되며 입출력 기능이 없어 내부에 뷰나 뷰 그룹을 가짐 setContentView 메서드.
CHAP 11. 액티비티와 인텐트.
07. 메뉴와 대화상자 제목. 07. 메뉴와 대화상자 제목 메뉴를 작성하고 사용하는 방법을 배운다. 토스트의 다양한 출력 방법을 알아본다. 대화상자의 사용법을 익힌다.
14. 서비스와 브로드캐스트 리시버 제목. 14. 서비스와 브로드캐스트 리시버 제목.
06. 고급 위젯 다루기 제목. 06. 고급 위젯 다루기 제목 고급 위젯을 다루는 방법을 익힌다. 뷰 컨테이너와 그 응용법을 학습한다. 매니패스트 파일의 설정법을 배운다.
06. 고급 위젯 다루기 제목. 06. 고급 위젯 다루기 제목 고급 위젯을 다루는 방법을 익힌다. 뷰 컨테이너와 그 응용법을 학습한다. 매니패스트 파일의 설정법을 배운다.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
8장. 원격지 시스템 관리하기.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
05. 레이아웃 익히기 제목. 05. 레이아웃 익히기 제목 레이아웃의 개념을 익힌다. 화면을 다양한 레이아웃으로 구성한다. Java 코드만으로 화면을 작성해 본다.
D / K / I / T / E / C / H / N / O / L / O / G / Y
Power Java 제14장 배치 관리자.
14 SQLite DB 활용 B A S I C 1 4_ 고객 등록과 조회 L A B 1 4_ 수정과 삭제를 포함하는 고객관리시스템 Advanced LAB 14_ 탭 메뉴의 고객관리시스템.
속성과 리스너 초기화 파라미터 외 파라미터에 대해 이해한다. 리스너를 생성해보고 사용에 대해 이해한다.
CHAP 12. 리소스와 보안.
Eclipse 를 이용한 네트워킹 퍼즐 게임 “Scrambled Net” 담당 교수님 전진우 교수님 최은아.
이메일 자동 포워딩 방법 (Outlook/OWA)
2018년 11월 05일 박성진 Web & Internet [08] 레이아웃 P1 2018년 11월 05일 박성진
영상처리 실습 인공지능연구실.
LIT-GenAppSetup ※ Texting+ 클라이언트 프로그램은 제품 인증을 받은 제품입니다.
CHAP 5. 레이아웃.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
[그림 1-1] 안드로이드 전용 어플리케이션 설치 방법
2강_첫번째 안드로이드 프로젝트 에뮬레이터(AVD) 만들기 처음 만들어 보는 프로젝트 전체적인 구성 살펴보기
11.어댑터 뷰 제목. 11.어댑터 뷰 제목 리스트뷰와 그리드뷰 활용법을 배운다. 갤러리와 스피너의 사용법을 익힌다.
웹서버 기능으로 데이터 읽기 및 제어하기 WiFi 시리얼 보드 활용가이드 김영준
PMIS 서버 설정 환경설정 작성자 : 배경환.
빌드 성공.
CHAP 21. 전화, SMS, 주소록.
11. 어댑터뷰 제목. 11. 어댑터뷰 제목 리스트뷰와 그리드뷰 활용법을 배운다. 갤러리와 스피너의 사용법을 익힌다.
( Windows Service Application Debugging )
OpenCV 설정 2.21 만든이 딩딩.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
12 그리드 시스템.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
15강_액티비티 액티비티란? 새로운 액티비티로 전환 생명주기 화면방향(Orientation)
Power Java 제14장 배치 관리자.
05. 레이아웃 익히기 제목. 05. 레이아웃 익히기 제목 레이아웃의 개념을 익힌다. 화면을 다양한 레이아웃으로 구성한다. Java 코드만으로 화면을 작성해본다.
이 프레젠테이션은 PowerPoint의 새로운 기능에 대해 안내하며, 슬라이드 쇼에서 가장 잘 보입니다
7 생성자 함수.
6 객체.
CCISS 어레이 형식 centos7 설치방법
BoardGame 보드게임 따라가기.
20 XMLHttpRequest.
Presentation transcript:

10. 액티비티와 인텐트 제목

액티비티의 개념을 파악한다. 인텐트의 개념과 활용법을 익힌다. 액티비티 생명주기에 대해 알아본다.

01 액티비티와 인텐트 기본 02 액티비티와 인텐트 응용

1. 액티비티와 인텐트 기본 ▶안드로이드 4대 컴포넌트[1/2] 액티비티(Activity) : 화면을 구성하는 가장 기본적인 컴포넌트 서비스(Service) : 액티비티와 상관없이 백그라운드에서 동작하는 컴포넌트 브로드캐스트 리시버(Broadcast Receiver) : 문자 메시지 도착, 배터리 방전, SD카드 탈부착, 네트워크 환경 변화 등이 발생하면 방송 신호 보냄

1. 액티비티와 인텐트 기본 ▶안드로이드 4대 컴포넌트[2/2] 콘텐트 프로바이더(Content Provider) : 응용프로그램 사이에 데이터를 상호 공유하기 위한 컴포넌트 콘텐트 프로바이더의 정보를 제공하는 방법으로는 URI(Uniform Resource Identifier)가 있음

1. 액티비티와 인텐트 기본 ▶액티비티 개요[1/11] 액티비티 추가 일반적으로 액티비티 하나당 XML 파일 하나를 만들어서 사용 MainActivity.java 코드는 Activity 클래스를 상속받으므로 MainActivity.java 를 액티비티라고 부름

1. 액티비티와 인텐트 기본 ▶액티비티 개요[2/11] 안드로이드 프로젝트 생성 프로젝트 이름 : Project10_1 패키지 이름 : com.cookandroid.project10_1

1. 액티비티와 인텐트 기본 ▶액티비티 개요[3/11] 화면 디자인 및 편집 activity_main.xml에 클릭하면 다른 액티비티가 나오게 하는 버튼을 하나 만듦

1. 액티비티와 인텐트 기본 ▶액티비티 개요[4/11] 화면 디자인 및 편집 새로운 액티비티에서 사용할 second.xml을 만든 후 배경색을 바꾸고 <돌아가기> 버튼을 하나만 만듦

1. 액티비티와 인텐트 기본 ▶액티비티 개요[5/11] Java 코드 작성 및 수정 새로운 액티비티인 SecondActivity.java 파일을 만듦

1. 액티비티와 인텐트 기본 ▶액티비티 개요[6/11] Java 코드 작성 및 수정 액티비티의 필수 메소드인 onCreate( )를 추가한 후 자동완성시킴 second.xml을 화면에 보여주는 코드를 한 행 추가

1. 액티비티와 인텐트 기본 ▶액티비티 개요[7/11] Java 코드 작성 및 수정 second.xml의 <돌아가기>를 클릭하면 현재 액티비티를 끝내는 코드 추가 현재 액티비티를 종료 SecondActivity는 메인 액티비티에서 호출할 것이므로 SecondActivity를 종료하면 다시 메인 액티비티가 나타남

1. 액티비티와 인텐트 기본 ▶액티비티 개요[8/11] Java 코드 작성 및 수정 메인 액티비티에서 SecondActivity를 호출하는 코드를 추가

1. 액티비티와 인텐트 기본 ▶액티비티 개요[9/11] 프로젝트 실행 및 결과 확인 완성된 프로젝트를 실행하면 다음과 같은 오류가 발생 안드로이드에서는 사용될 액티비티를 AndroidManifest.xml에 꼭 등록해야 함 메인 액티비티(MainActivity)는 자동으로 등록되지만, 추가한 SecondActivity 는 별도로 등록해줘야 함

1. 액티비티와 인텐트 기본 ▶액티비티 개요[10/11] [반복]화면 디자인 및 편집 AndroidManifest.xml 파일을 열고 SecondActivity를 등록 아래 코드를 </application> 바로 윗 행에 코딩

1. 액티비티와 인텐트 기본 ▶액티비티 개요[11/11]

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[1/14] 인텐트(Intent) 안드로이드 4대 컴포넌트가 상호 간에 데이터를 주고 받기 위한 메시지 객체 명시적 인텐트와 암시적 인텐트로 구분

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[2/14] 명시적 인텐트와 데이터의 전달 명시적 인텐트 : 다른 액티비티의 이름을 명확히 지정할 때 사용하는 방법 메인 액티비디에서 인텐트에 데이터를 실어서 넘긴 후, 세컨드 액티비티에서 받은 데이터를 처리

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[3/14] 래이팅바 예제

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[4/14] 래이팅바 예제 Java 코드

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[5/14] 안드로이드 프로젝트 생성 프로젝트 이름 : Project10_2 패키지 이름 : com.cookandroid.project10_2 화면 디자인 및 편집 적당한 명화 이미지 9개를 /res/drawable-hdpi에 복사

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[6/14] 메인 액티비티에서 사용할 activity_main.xml 수정 바깥 리니어레이아웃 안에 리니어레이아웃 3개, 버튼 1개를 생성 layout_weight를 3:3:3:1로 함 3개의 레이아웃에는 각각 3개의 이미지 뷰를 넣고 layout_weigh는 1:1:1로 함 필요하면 이미지뷰에 적당한 layout_margin(ex : 5dp)을 줌 9개 이미지뷰의 id는 iv1~iv9, 버튼의 id는 btnResult로 함

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[7/14] 서브 액티비티에서 사용할 result.xml을 /res/layout 폴더에 생성 바깥은 테이블레이아웃으로 설정 stretchColumns 속성을 0으로 함 <TableRow>를 그림의 숫자와 동일한 (9+1)개로 하고, 각 테이블 로우에는 텍스트뷰 1개, 래이팅바 1개를 생성 마지막 테이블 로우에는 <돌아가기> 생성 텍스트뷰의 id는 tv1~tv9로, 래이팅바의 id는 rbar1~rbar9로, 버튼의 id는 btnReturn으로 함

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[8/14] Java 코드 작성 및 수정 새로운 액티비티인 ResultActivity.java 파일을 만듦 onCreate( ) 메소드를 추가한 후 setContentView(R.layout.result)를 추가 AndroidManifest.xml에 등록

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[9/14] onCreate() 내부에 필요한 변수 선언 그림을 클릭할 때마다 투표 수를 저장할 9개짜리 배열을 선언하고 0으로 초기화 이미지뷰 위젯을 저장할 9개짜리 배열을 선언 이미지뷰 위젯의 id인 R.id.iv1 ~ iv9 를 저장한 배열을 선언 그림의 이름을 저장한 9개짜리 배열을 선언

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[10/14] onCreate() 내에 이미지 클릭 시 동작할 내용 코딩 각 이미지뷰에 대해 클릭 이벤트 리스너 생성 이미지뷰가 9개이므로 반복문을 사용 이미지 클릭하면 각 이미지의 투표수가 증가하도록 설정 이미지 클릭할 때마다 해당 이미지 이름과 누적된 투표수도 토스트 메시지로 보여줌

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[11/14] onCreate() 내에 <투표 종료>에 대해서 클릭 이벤트 리스너 생성 인텐트를 생성, 인텐트에 투표수 배열과 그림 이름 배열을 넣은 후 결과 액티비티 호출

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[12/14] 서브 액티비티인 ResultActivity.java 파일의 onCreate( ) 메소드 안을 코딩 메인 액티비티에서 보낸 인텐트 받고, 넘겨 받은 투표 결과 배열과 그림 이름 배열 저장

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[13/14] 서브 액티비티 나머지 코딩 result.xml의 텍스트뷰 9개와 래이팅바 9개의 위젯 변수 배열을 선언 텍스트뷰 id를 저장한 배열 변수, 래이팅바의 id를 저장한 배열 변수를 선언 XML 파일의 텍스트뷰 및 래이팅바를 위젯 변수에 대입 텍스트뷰 위젯 변수에 넘겨받은 그림 이름 을 적용 래이팅바에는 넘겨받은 투표 결과를 적용 버튼을 클릭하면 서브 액티비티를 종료 즉, 메인 액티비티로 돌아간다.

1. 액티비티와 인텐트 기본 ▶명시적 인텐트[14/14]

2. 액티비티와 인텐트 응용 ▶양방향 액티비티[1/6] 양방향 액티비티와 데이터의 전달 메인 액티비티에서 세컨드 액티비티로 데이터를 넘긴 후에 다시 세컨드 액티비티에서 메인 액티비티로 데이터를 돌려주는 경우

2. 액티비티와 인텐트 응용 ▶양방향 액티비티[2/6] 양방향 데이터 전달 예제 메인 액티비티의 에디트텍스트의 두 수를 세컨드 액티비티에서 더한 후에 다시 메인 액티비티로 돌려줌

2. 액티비티와 인텐트 응용 ▶양방향 액티비티[3/6] 양방향 데이터 전달 예제

2. 액티비티와 인텐트 응용 ▶양방향 액티비티[4/6] 양방향 데이터 전달 예제 메인 액티비티 Java 코드

2. 액티비티와 인텐트 응용 ▶양방향 액티비티[5/6] 양방향 데이터 전달 예제 세컨드 액티비티 Java 코드

2. 액티비티와 인텐트 응용 ▶양방향 액티비티[6/6]

2. 액티비티와 인텐트 응용 ▶암시적 인텐트[1/5] 암시적 인텐트(Implicit Intent, 묵시적 인텐트) 약속된 액션(Action)을 지정하여 안드로이드에서 제공하는 기존 응용프로그램 을 실행하는 것 전화 거는 것을 예로 들면 전화번호를 인텐트로 넘긴 후에 전화 걸기 응용프로 그램이 실행되는 것과 같음

2. 액티비티와 인텐트 응용 ▶암시적 인텐트[2/5] 암시적 인텐트(Implicit Intent, 묵시적 인텐트) 911에 응급전화를 거는 형식 전화 걸기를 하려면 AndroidManifest.xml에 다음과 같이 권한을 추가해야 함

2. 액티비티와 인텐트 응용 ▶암시적 인텐트[3/5] 암시적 인텐트 예제

2. 액티비티와 인텐트 응용 ▶암시적 인텐트[4/5] 암시적 인텐트 예제 Java 코드(1/2)

2. 액티비티와 인텐트 응용 ▶암시적 인텐트[5/5] 암시적 인텐트 예제 Java 코드(2/2)

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[1/11] 액티비티의 생성부터 소멸까지의 주기를 뜻함 안드로이드 응용프로그램은 화면이 작아 동시에 여러 개의 액티비티(화면)가 나올 수 없음 앞에 나오는 화면 하나만 활성화된 상태이고 나머지는 모두 비활성화된 상태 로 남게 됨

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[2/11]

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[3/11]

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[4/11] 안드로이드 프로젝트 생성 프로젝트 이름 : Project10_3 패키지 이름 : com.cookandroid.project10_3

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[5/11] 메인 액티비티에서 사용할 activity_main.xml 수정 버튼 2개를 생성하고 id는 btnDial, btnFinish로 함

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[6/11] 메인 액티비티인 MainActivity.java를 간단히 코딩 <전화걸기>를 클릭하면 다른 액티비티인 전화걸기 화면나오게 설정 <끝내기>를 클릭하면 메인 액티 비티를 종료

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[7/11] 메인 액티비티에 액티비티 관련 메소드 자동완성

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[8/11] 프로젝트 실행 및 결과 확인 로그캣 화면이 보이지 않으면 Android Studio 아래쪽 탭 중에서 ‘Android’를 클릭 하고 ‘Device | logcat’ 탭을 선택

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[9/11] 프로젝트 실행 및 결과 확인 로그필터 등록

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[10/11] 프로젝트 실행 및 결과 확인 응용프로그램을 실행하여 로그캣을 확인 만약 로그캣에 내용이 보이지 않으면 실행 단계마다 왼쪽 ‘액티비티’ 필터를 클릭

2. 액티비티와 인텐트 응용 ▶액티비티 생명주기[11/11] 다음의 각 단계마다 로그캣 확인 <전화걸기>를 클릭해서 다른 액티비티가 나타난 후 돌아가기 버튼을 눌러서 메인 액티비티로 돌아간 후 <끝내기>를 눌러 메인 액티비티를 마친 후