코린이 탈출기

chapter 3.1 - 액티비티 개념, extensions - xml에서 만든 UI 코틀린에서 끌어쓰기 본문

인터넷 강의/클래스101 - 비전공자들을 위한 나만의 안드로이드 앱 만들기

chapter 3.1 - 액티비티 개념, extensions - xml에서 만든 UI 코틀린에서 끌어쓰기

50HEE 2021. 4. 21. 16:28

Activity - 앱에서 하나의 화면을 지칭하는 단어입니다. 화면의 이름은 '~Activity'로 지어줍니다.

앱을 만든다는 것은 여러 개의 액티비티를 만들고, 각각의 기능들을 구현해서 이어 붙여주는 것이 기초 작업입니다.

 

 

액티비티의 구성요소

xml (layout) - 액티비티가 화면에 나타날 때, '어떤 모양'으로 나타낼지를  결정하는 파일입니다. 즉, 앱 화면을 만드는 것입니다. 

kt (코틀린 파일 - java폴더) - 액티비티가 일단 나타나고 난 후 (xml이 등장한 후) 이루어질 동작들을 작성하는 용도의 파일입니다. (java - 일종의 클래스)

 

고려사항

xml, kt 파일은 각자 별개의 파일이지만 실제로는 한 몸인 것처럼 동작합니다.

kt 파일의 onContentView의 매개변수가 무엇이냐에 따라 어떤 xml 파일을 불러올지 결정합니다.

즉, kt 파일이 xml 파일을 선택해서 불러오는 것입니다. 

 

xml에 만들어둔 뷰 / 레이아웃 등을 코틀린에 사용하기 위해서는 xml으로 화면을 그릴 때, 코틀린에서 가져다 사용할 요소들에게 id속성을 부여합니다.

id 속성의 설정은 '@+id/사용할 id 이름'입니다. 보통 버튼에 id를 붙일 때에는 '~Btn'으로 줄여서 사용한다고 합니다.

 

id에 적은 값을 그대로 코틀린 코드에 적어서 간편하게 '자동완성'을 하고 싶을 경우에는 한 가지 설정을 해야합니다.

프로젝트 Gradle Scripts -> build.gradle (Module : ~)에 들어가서 plugins { }  안에  id 'kotlin-android-extensions'를 추가합니다.

이는 id에 대한 확장형으로 자동완성을 도와줍니다.

추가를 한 후에는 'sync now'를 클릭해주어야만 적용이 됩니다.

extensions 설정

예를 들면 xml에서 만든 버튼을 kt 파일에 사용하고 싶을 때, 복잡하게 "변수를 설정한 후 ~" 이것을 생략하고 간단하게 확장 파일을 만들어 사용하는 방법입니다.

 

확장팩의 경우 java에서는 같은 작업을 위한 코드 작업이 추가로 필요하고 번거롭습니다.

이 방식은 kotlin에서만 사용이 가능합니다.

Comments