◆ 일반적인 애플리케이션 작성 절차
1) 사용자 인터페이스 작성(XML)
2) 자바 코드 작성(JAVA)
3) 매니페스트 파일 작성(XML)
◆ 패키지 폴더의 설명
1) java : 자바 소스 파일들이 들어있는 폴더이다. 폴더 안의 kr.co.company.hello는 패키지의 이름이다.
2) Gradle Scripts : 그레이들(Gradle)은 빌드 시에 필요한 스크립트이다.
3) res : 각종 리소스(자원)들이 저장되는 폴더이다. drawable에는 해상도 별로 아이콘 파일들이 저장된다. layout에는 화면의 구성을 정의한다. values에는 문자열과 같은 리소스가 저장된다. menu에는 메뉴 리소스들이 저장되어 있다.
4) manifest : XML 파일로 앱의 전반적인 정보 즉 앱의 이름이나 컴포넌트 구성과 같은 정보를 가지고 있다.
◆ 안드로이드 4대 컴포넌트
1) 액티비티(Activity) : 화면을 구성하는 가장 기본적인 컴포넌트
2) 서비스(Service) : 액티비티와 상관없이 백그라운드에서 동작하는 컴포넌트
*서비스 생성 -> 서비스 시작 -> 서비스 종료
3) 브로드캐스트 리시버(Broadcast Receiver) : 문자 메시지 도착, 배터리 방전, SD 카드 탈부착, 네트워크 환경 변화 등이 발생하면 전체 응용 프로그램이 들을 수 있도록 방송 신호 보냄.
4) 콘텐트 프로바이더(Content Provider) : 응용프로그램 사이에 데이터를 상호 공유하기 위한 컴포넌트
* 콘텐트 프로바이더의 정보를 제공하는 방법으로는 URI(Uniform Resource Identifier)가 있음
◆ 뷰
뷰(View) : 화면에 보이는 각각의 것들(버튼, 텍스트 등)로, 흔히 컨트롤(Control)이나 위젯(Widget)으로 불리는 UI 구성 요소
뷰 그룹(View Group) : 뷰들을 여러 개 포함하고 있는 것으로, 뷰 그룹도 뷰에서 상속하여 뷰가 된다. 즉, 위의 뷰는 버튼, 텍스트 뿐만 아니라 이것들을 포함하는 눈에 보이지 않는 영역을 포함한다.
위젯(Widget) : 뷰 중에서 일반적인 컨트롤의 역할을 하고 있는 것으로, 버튼, 텍스트 등이 여기 포함된다.
레이아웃(Layout) : 뷰 그룹 중에서 내부에 뷰들을 포함하고 있으면서 그것들을 배치하는 역할을 하는 것
◆ 위젯(Widget)과 레이아웃(Layout) 차이
-뷰클래스는 다른 말로 ‘위젯’이라고도 함, 다른 위젯을 담을 수 있는 위젯은 레이아웃이라고 함, 레이아웃은 ViewGroup 클래스 아래 존재, 레이아웃도 뷰이기 때문에 레이아웃 안에 레이아웃을 포함시킬 수 있음
-뷰그룹 : 다른 뷰들을 담는 컨테이너 기능을 한다. 뷰그룹은 ViewGroup 클래스에서 상속 받아서 작성된다. 흔히 레이아웃(Layout)이라고 불리며 선형 레이아웃, 테이블 레이아웃, 상대적 레이아웃 등이 여기에 속한다. 각 레이아웃은 정해진 정책에 따라서 뷰들을 배치한다.
-뷰 : 컨트롤 또는 위젯이라고도 불린다. 사용자 인터페이스를 구성하는 기초적인 빌딩 블록이다. 버튼, 텍스트 필드, 체크박스 등이 여기에 속한다. 뷰들은 View 클래스를 상속 받아서 작성된다.
◆ 패딩과 마진의 차이
패딩: 뷰의 경계와 뷰의 내용물 사이의 간격(위젯의 안에 있는 내용물 사이의 거리)
마진 : 자식 뷰 주위의 여백(위젯~레이아웃 사이 거리)
'Computer Science > Mobile Programming' 카테고리의 다른 글
안드로이드 액티비티 라이프 사이클 (0) | 2023.01.21 |
---|---|
인텐트 (0) | 2023.01.21 |
안드로이드 뷰와 레이아웃 (0) | 2023.01.21 |
객체지향 프로그래밍 이해 (0) | 2023.01.21 |
안드로이드 주요 특징 및 아키텍처 소개 (0) | 2023.01.21 |