Do it! 안드로이드 앱프로그래밍 2일차 (19.03.29)

2019. 3. 29. 22:02Engineer/안드로이드 앱 프로그래밍

반응형

어제는 첫째 마당 끝내고, 오늘 부터 둘째 마당 시작. 둘째마당은 13개의 챕터로 구성되어있다. 오늘은 챕터1, 2를 공부. 

 Chapter 01. 안드로이드 스튜디오와 기본 레이아웃 익히기 

● View

사용자에게 보여줄 화면 구성은 Activity 안에 어떤 View를 어떻게 집어 넣어 레이아웃을 만들 것인가를 결정 하는 것. View는 일반적으로 컨트롤이나 위젯으로 불리는 UI 구성요소. 즉, 화면을 구성하는 기본 요소. View를 여러개 포함하고 있는 것을 view group이라 하며, view group 안에서는 view의 위치를 지정할 수 있으며, 다른 view group을 내부에 넣을 수 있으며, view group은 view를 상혹하여 view처럼 다룰 수 있음. View의 폭과 높이는 픽셀 값으로 지정하면 단말마다 해상도가 달라 그 크기가 달라보일수 있으므로 dp(단말의 해상도와 연결되어있은 단위)로 나타내야 서로 다른 단말에서 비슷하게 보일 수 있음

  • Widget : 일반적인 컨트롤 역할을 하는 view
  • Layout : View group 중에서 내부에 view를 포함하고 있으며, 그것을 배치하는 역할을 하는 것

● 태그명은 대문자로 시작하며 태그는 <태그명 ... > 으로 시작하고 태그를 끝낼때는 </태그명> 으로 끝남. 속성명은 소문자로 시작

 

● 안드로이드 스튜디오 팁

  • Xml을 이용하여 화면 구성을 디자인 할 때 청사진 모드는 겹치는 부분이나 보이지 않는 구성요소가 있는지 확인할 때 사용
  • 해당 Class의 API 문서를 확인하고 싶으면  ctrl + Q 
  • 어떤 파라미터가 들어가는지 궁금하면 파라미터를 입력하는 커서를 대고  ctrl + P 

● Xml 파일의 기본 코드에 대한 설명

  • xmlns:android : 안드로이드 기본 SKD에 포함되어 있는 속성을 사용
  • xmlns:app : 프로젝트에서 사용하는 외부 라이브러리에 포함되어 있는 속성을 사용
  • xmlns:tools :안드로이드 스튜디오의 디자이너도구 등에서 화면에 보여줄 때 사용. 이 속성은 앱이 실행될 때는 적용되지 않고 안드로이드 스튜디오에서만 적용
  • id 속성은 안드로이드 기본 SDK에 포함되어있는 속성이므로 android:id 로 prefix를 androlid를 쓰며, id 속성은 뷰를 구분하는 구분자 역할을 함. id 속성이 사용되는 용도는 크게 두가지. Xml 레이아웃 파일 안에서 뷰를 구분할 때. 그리고 xml 레이아웃 파일에서 정의한 뷰를 자바 소스 파일에서 찾을 때. 형식은 @+id/아이디값 

 

 Chapter 02. 레이아웃과 기본 위젯 사용하기 

대표적인 레이아웃

일종의 PPT에 사용되면 문서 layout과 같은 개념이다. 기본적으로 아래의 레이아웃이 제공되며, 개발자가 직접 만들어도된다.

  • Constraint layout : 제약 조건을 이용해 화면을 구성. 디폴드 레이아웃
  • Linear layout : 막스 모델. 한쪽 방향으로 뷰를 추가시킬 수있음. Orientation 속성 설정 필수
  • Relative layout : 규칙 기반 모델. 부모 컨테이너나 다른 뷰와의 상대적 위치로 화면 구성
  • Frame layout : 싱글 모델. 가장 사우이에 있는 하나의 뷰 또는 뷰 그룹만 보여주는 방법. 여러 뷰가 중첩하여 쌓게함
  • Table layout : 격자 모델. 격자 모양의 배열을 사용하여 화면을 구성. 비슷한 기능의 위젯이 있어 잘 사용하지 않음

●View의 영역

  • Margin : view의 테두리 바깥쪽 공간
  • Padding : view의 테두리 내부쪽 공간으로, 엄밀히 말해 테두리와 view의 내부 contents 사이의 공간을 뜻함 
  • Border : view의 테두리

●색 표현 방식

주로 #AARRGGBB 형식을 이용. AA는 투명도를 나타내는 16진수 2자리. RRBBGG는 각각 빨강, 초록, 파랑을 의미하는 16진수 6자리로, 예를 들어 #ffff0000 은 불투명한 빨간색을 의미하고, #8800ff00은 반투명한 파란색을 나타냄

 

 ● View 에 적용되는 속성의 이름은 layout_ 이라는 접두어로 시작. 따라서 layout_gravity는 view의 정렬을 담당하는 속성이고, gravity는 view내무에 듣ㄹ어있는 contents(text, image)에 적용 되는 속성

 

TextView의 대표 속성

text, textColor, textSize, textStyle, typeFace, maxLines. 이름만 봐도 뭐하는 속성인지 유추 가능

 

● 그외 위젯

Button, RadioButton, CheckBox, ImageButton, EditText(텍스트 입력), ImageView 등이 있으며 각 위젯을 사용하기 위해 태그 방법, 속성 등에 대해 알 고 있어야 함

 

 

 

 

 

반응형