Do IT SOPT — Android seminar 1

이승우
SOPT
Published in
6 min readOct 21, 2018

SOPT는 Shout Our Passion Together의 약자로 전국 대학생 IT 창업 동아리를 의미합니다. 기획, 디자인, 서버, Android, iOS 총 다섯 가지 파트가 존재하며, 올해로 10주년을 맞은 SOPT는 더 발전된 모습으로 회원들과 함께 활동을 하고 있는데요. 저는 그 중에서 안드로이드 파트의 세미나 내용을 듣고 정리를 해보려고 합니다! :)

1차 세미나 in 한양대학교

  • Android Studio에서 만든 프로젝트를 분석
  • View 컴포넌트
  • Kotlin에 대한 가벼운 내용

Android Studio의 프로젝트 구조를 이해해보자.

1. Android Manifest 파일

Android Manifest 파일
  • 앱의 정보를 가지고 있는 파일이다.
  • 각종 권한을 등록할 수 있다. [추후에 실제 프로그래밍을 해보면서 적용해 볼 예정. :)]
  • 패키지 명(추후에 앱의 고유 id 생성에 영향을 미침.)
  • icon [앱의 아이콘 이미지 설정] / label [앱의 name을 설정]
  • theme : 앱 전역에서 사용할 테마를 설정한다.
  • Activity 등록. intent-filter 태그 안에서 action과 category를 통해 어떤 Activity가 먼저 시작될 것인지 결정할 수 있다.

2. Activity 파일

MainActivity.kt 파일
  • 하나의 Activity 파일은 하나의 layout을 가진다.
  • 하나의 Activity는 하나의 화면을 의미한다.

3. layout 파일(xml)

activity_main.xml [layout 파일]
  • Activity나 Fragment의 UI를 구성할 수 있는 layout을 정의한다.
  • 쉽게 말해서 뷰를 짜는 공간이라고 생각하면 된다.

4. build.gradle

build.gradle 파일
  • 버전 관리를 할 수 있다.
  • 최소 버전과 타겟 버전을 설정할 수 있다.
  • 또한, 외부 라이브러리를 명시할 수 있다.

View 컴포넌트에 대해서

(1) Widget

Button, TextView, EditText, ImageView 등을 Widget이라고 부른다. 아래는 자주 사용되는 View Widget이다.

  • TextView : 문자열을 보여줄 Widget
  • EditText : 문자열 입력이 가능한 Widget
  • ImageView : 리소스 이미지를 보여줄 Widget
  • Button : Button 이벤트 처리가 가능한 Widget

참고로 다른 뷰로 버튼과 똑같이 구현할 수 있다.

(2) ViewGroup

LinearLayout, RelativeLayout, ConstraintLayout 등을 View(view, ViewGroup)들을 둘러싼 ViewGroup이라고 부른다.

View란 눈에 보이는 모든 구성 요소를 말한다. Button이나 TextView들도 View가 될 수 있고, Widget을 배치할 수 있는 Layout들도 View가 될 수 있다. 지금 부터는 자주 사용되는 ViewGroup에 대해서 알아 볼 것이다.

1. LinearLayout

내부 View(Widget, ViewGroup)들을 선형으로 배치하는 경우에 사용하면 유리하다. Orientation 속성을 통해 vertical(수직 방향), horizontal(수평 방향)을 지정할 수 있다. 주로 일정하게 줄지어진 뷰를 구성할 때 편리하며 자주 사용된다.

  • layout_weight : view가 차지하는 비중을 설정할 수 있다.
  • gravity : 본인 뷰 내부의 뷰의 위치를 설정할 수 있다.
  • layout_gravity : 부모 뷰를 기준으로 본인의 위치를 설정할 수 있다.
왼쪽 : vertical, 오른쪽 : horizontal

2. RelativeLayout

내부 View(Widget, ViewGroup)들을 상대적으로 배치한다. 특정 뷰를 기준으로 하여 다른 뷰를 배치한다. 또한, 일정하게 정렬되지 않은 뷰를 짤 때 사용한다. 겹치는 뷰를 짤 때 유용하게 사용할 수 있다.

아래는 RelativeLayout에서 자주 쓰는 View 옵션을 크게 두 가지로 나누어서 설명했다.

(1). RelativeLayout 내부에서 View가 가질 수 있는 옵션

(2). RelativeLayout 내부의 View끼리 가질 수 있는 옵션으로, View A의 id와 View B의 id를 통해 상대적인 위치를 결정한다.

Kotlin에 대한 가벼운 내용

Kotlin에 대해서 정말 간단한 내용만 짚고 넘어가고자 한다. 추후에 기회가 된다면 Kotlin 공부한 내용을 조금이라도 포스팅 할 생각이다.

(1) 변수 선언 및 상수 선언

Kotlin에서 변수와 상수의 선언은 자바에서 선언하던 방식과 다르다. 자바에서는 ‘타입 변수명 = 값’ 의 형태로 변수 혹은 상수를 선언하였다면 Kotlin은 이와 조금 다른 방식을 갖는다.

실습과 관련된 코드들은 https://github.com/WooVictory/Doit_23th_SOPT에서 확인 해주세요. :)

--

--