#6 안드로이드 스튜디오로 안드로이드 앱 만들기 - 뷰(View)의 계층구조

2018. 1. 26. 11:08안드로이드

반응형

#1 안드로이드 스튜디오로 안드로이드 앱 만들기 - 개발 환경 구축

#2 안드로이드 스튜디오로 안드로이드 앱 만들기 - 개발 디렉토리와 파일 구조

#3 안드로이드 스튜디오로 안드로이드 앱 만들기 - 액티비티(Activity) 뷰(View) 구조

#4 안드로이드 스튜디오로 안드로이드 앱 만들기 - UI 작성 방법 : 자바코드 VS 레이아웃 XML

#5 안드로이드 스튜디오로 안드로이드 앱 만들기 - 뷰(View)의 기초 속성



안드로이드의 액티비티 화면을 구성하기 위해 다양한 뷰 클래스들을 이용한다. 이런 뷰들의 구조를 이해하면 UI 프로그램 곳곳이 자연스럽게 이해되는 부분이 많다.



뷰(View)의 기본 구조는 뷰 객체간의 계층으로 이루어져 있다. 먼저 안드로이드 뷰 클래스의 기본 골격으로는 아래와 같은 View, ViewGroup, TextView 가있다.


■ View : 안드로이드 뷰 클래스의 최상위 클래스이다. 최상이 클래스 명이 View여서 안드로이드에서는 Button 같은 UI 위젯 클래스들을 뷰라고 부른다. 액티비티에 출력되는 클래스는 모두 이 View의 서브 클래스들이다.


■ ViewGroup : 뷰의 서브 클래스여서 화면에 출력되지만, 뷰그룹 자체만의 UI는 가지지 않는다. 화면에 출력은 되지만 아무것도 안나온다는 이야기다. 그러면 필요없는 것으로 생각하기 쉬운데, 뷰그룹의 역할은 UI 출력이 아니라 다른 뷰(Button 같은) 여러 개를 뷰그룹에 포함(Add)하여 한꺼번에 제어하기 위한 목적으로, 일반적으로 컨테이너 기능을 담당한다. 실제 뷰그룹도 이용되지만, 뷰그룹의 서브 클래스들인 레이아웃 클래스들이 사용된다.


■ TextView : 특정 UI를 출력할 목적으로 제공되는 클래스 중 대표적으로 TextView, Button 등이 있다. 





위 화면처럼 만들고싶다고 가정해보자. 그러면 당연히 Button 객체는 총 4개를 생성해야한다. 그럼 이 4개의 객체를 화면에 출력하려면 각 Button1, 2들을 ViewGroup2과 ViewGroup3에 포함하고, 다시 ViewGroup2와 ViewGroup3을 ViewGroup1에 포함하여 계층구조를 완성 할 수 있다.


이처럼 뷰객체들이 계층구조라는 것을 알면 UI 프로그램을 작성할 때 이해가 쉽다.


반응형