안드로이드 스튜디오

2.12 2주면 포기할 당신을 위하여: 안드로이드 스튜디오에서 Intent 코딩: I

coding art 2020. 2. 20. 13:32
728x90

인공지능을 포함한 컴퓨터 사이언스 영역 배우기 위해서 항상 부딪히는 일이 컴퓨터 언어를 익히는 일이다. 대학 초년생 기준으로 Visual Studio를 사용한 C 언어 실습이 대표적일 것이다. 아주 기초적인 내용들을 배워 Homework 나 프로젝트를 수행하기 위해서는 이론 공부와 함께 Visual Studio 사용에 상당히 익숙해질 필요가 있다. 하지만 초보자가 이 선까지 도달하는 데에 2주가 걸리는데, 만약 적절한 가이드가 없이 Visual Studio를 한 두주 접해 보면 선을 못 넘겨 포기하기 십상이다. 요즈음 유행하는 신종코로나19의 잠복 주기도 2주라고 하는데 공교로워 보인다. Visual Studio를 다룰 때 겪었던 증상과 비슷한 증상이 안드로이드 스튜디오를 배우는 데에도 나타난다. 그 난이도는 좀 더 높은 듯하다. 지금 현재 안드로이드 블로그 관련 글이 12번째인데 이 지점이 바로 거기에 해당한다. 이 선을 넘기면 안드로이드 스튜디오 학습에 큰 진전이 있을 것이다.

Intent 코딩은 앱인벤터에서는 본 적이 없지만 스마트폰 코딩에서는 너무나 흔하게 일어나므로 반드시 학습해야 할 코딩이다. Intent 라 함은 스마트 폰 한 화면에서 버튼을 조작하여 다른 화면으로 넘어가는 작업에 해당한다.


MainActivity의 역할은 reslayout 폴더에 들어 있는 스마트폰 화면에 해당하는 activity_main.xml을 사용하여 on Create, onStart, on Resume, ∙∙∙명령 실행이 순차적으로 이루어지게 된다. 한편 2개의 스마트폰 화면을 사용할 경우에는 한 화면에서 다른 화면으로의 전환이 필수적이며 이때에는 MainActivity 외에 추가로 Activity 가 필요하게 된다. 이르 SubActivity 라 하자. 안드로이드 스튜디오의 java 폴더에서 아래와 같이 SubActivity를 추가하자. 추가작업 과 더불어 reslayout activity_main.xml 외에 activity_sub.xml 이 생성됨을 확인하도록 한다.


activity_main.xml에서 LinearLayout으로 변경하고 Button 하나를 설정하자.


button.set에서 setOnClickListener를 선택 클릭하자.

setOnClickListener 생성 후 즉시 ()new Vi를 입력하면 나타나는 선택 옵션 중에서 View.OnClickListener{...}을 클릭하면 아래와 같이 자동 채움이 일어나며 여기에 화면 전환을 위한 Intent를 코딩하도록 하자.


Intent 코드 작성과정에서 헤더 영역에 import android.content.Intent; 명령에 의해 Intent 라이브러리가 설정됨에 유의하자. MainActivity SubActivity 모두 Class에 해당하겠지만 확장자 처리과정에서 this는 현재 편집 중인 MainActivity를 의미하며 SubActivity class 로 처리함에 주의한다.


한편 activity_sub.xml 에서도 유사하게 LinearLayout을 취하고 화면 전환이 될 경우 TextView를 사용하여 “Received A Message From MainActivity” 를 출력할 수 있도록 하자.






앱을 실행하면 다음의 첫 번째 화면이 나타나며 BUTTON을 클릭하면 오른쪽의 SubActivity 화면으로 전환된다.



이와 같은 Intent 코딩 사례는 이미 안드로이드 스튜디오 Camera SimpleCamera 코드에 다음과 같이 포함되어 있었음에 유의하자.







첨부된 코드를 다운받아 실행해 보도록 하자.


Intent.zip







































Intent.zip
0.13MB
Intent.zip
0.13MB