유튜버 '슬기로운 생활코딩' 님의 강의를 듣고, 정리해보았습니다.
[링크]
안드로이드 프로젝트 파일 구성
- AndroidManifest.xml [매니페스트 파일]
> manifest 나타내다, 분명히하다.
> 어플리케이션의 속성을 설정한다.
아이콘 모양
어플리케이션 이름
어플리케이션 테마 등
> 어플리케이션 내 모든 액티비티를 정의한다.
액티비티 이름
액티비티 경로
> .xml 파일(eXtensible MarkUp Language)로 이루어져있다.
> .xml은 태그(tag)를 사용하는 언어이다.
- com.example.@프로젝트@
> 어플리케이션의 모든 액티비티 클래스의 기능(Operation)을 명시한다.
> 액티비티 각각 클래스를 가지며, res/layout/에 있는 레이아웃 파일들과 연동된다!
> 레이아웃 파일은 액티비티의 뷰(View)를 설정한다면, 클래스 파일은 액티비티 내 컴포넌트와 뷰 간의 기능을 정의한다.
액티비티 레이아웃 / Activity layout
- res/raw, res/layout
> resource(자원)을 나타내는 폴더로, 어플리케이션에 사용되는 자원을 모두 저장해놓는 폴더이다.
> activity.xml 파일로, 액티비티의 레이아웃을 설정할 수 있다.
> 레이아웃은 코드형식(왼쪽), 디자인(오른쪽) 두 가지 방식으로 설정할 수 있다.
> 속성 정리
<LinearLayout> </LinearLayout>
또는, <LinearLayout ~~~~~~~~~~~~/> 처럼 태그화하여 액티비티 내 여러 객체를 정의한다.
> android:id = "@+id/num4"
> 뷰의 아이디를 설정한다. @+id 키워드를 사용해서 안드로이드 속성 라이브러리에 속성으로 추가할 수 있다. 추가된 속성은 클래스 파일에서 변수로 사용한다.
> android:layout_width/height = "@@dp"
> 해당 뷰의 너비와 높이를 설정한다.
> android:layout_margin___ = "@@dp"
> 해당 뷰의 다른 뷰와의 간격을 설정한다.
> android:textSize = "bold/italic 등등 *소문자로 시작함!
> android:gravitiy = 뷰의 중력을 설정한다. [세부 내용]
- DP (Density Independent Pixel)
> 픽셀과 상관없이 독립적인 크기를 나타내는 단위. 스마트폰 화면 종류에 상관없이, 비율로써 뷰를 보여준다.
- SP (Scale Independent Pixel)
> 안드로이드에서 주로 쓰이는 텍스트 단위로, 유저가 폰트 크기나 스타일을 자유롭게 변경하는 것을 허용한다.
> 노안, 접근성, UI와 관련됨. Q.보통 SP로 사용하나?
- PX (Pixel)
> 픽셀. '화소' 단위이며, 스마트폰 화면 크기와 상관없이, 고정된 크기를 가진다.
> 눈에서 보이는 크기가 고정되며, 1inch = 96 pixel / 1 pixel = 약 0.264 mm /
- PT(Point)
> iOS에서 사용하는 단위이며, 본질적으로는 좌표 개념이지만 dp단위와 다르게 안드로이드처럼 비율로 늘어나지 않는다.
> 고정 영역에 대한 이해야 필요하다.
- Kotlin (코틀린)
> 키워드 모음
val : 값을 변경할 수 없는 상수를 선언하는 키워드. Java의 final, C/C++의 const와 유사한 개념이다. Immuable
var : 값을 변경할 수 있는 변수를 선언하는 키워드. Mutable
func : 함수를 선언할 때 사용하는 키워드
코틀린에서 함수의 기본형은 아래와 같다.
func max(num1: Int, num2: Int) : Int {
return if (a>b) a else b
}
override : 자바에서 @override로 재선언하는 것과 달리, 코틀린에서는 키워드를 사용한다.
'프로그래밍' 카테고리의 다른 글
웹개발 TID(Today I Learned) 2일차 (0) | 2022.06.12 |
---|---|
웹개발 TID(Today I Learned) 1일차 (0) | 2022.06.09 |
정보처리산업기사 - EAI, CRM, CPM (0) | 2021.04.03 |
디버깅이란? (0) | 2021.04.02 |
코틀린(Kotlin)이 뭐지? 내 경험 (0) | 2021.03.17 |