모바일 개발 · 기초
안드로이드 UI 구성의 기본 요소인 View와 ViewGroup의 차이점을 설명하고, 각각의 예시를 들어주세요.
힌트 · View는 화면에 보이는 단일 UI 요소, ViewGroup은 다른 View나 ViewGroup을 포함하여 계층 구조를 형성하는 컨테이너입니다.
ViewViewGroup상속레이아웃컨테이너
모범답안
View와 ViewGroup은 안드로이드 UI를 구성하는 핵심 요소입니다. View는 화면에 보이는 기본적인 UI 요소, 예를 들어 버튼, 텍스트 뷰, 이미지 뷰 등을 의미합니다. 사용자와 직접 상호작용하는 역할을 주로 담당합니다.
반면 ViewGroup은 다른 View나 또 다른 ViewGroup을 담는 컨테이너 역할을 합니다. 즉, View들을 그룹화하여 레이아웃을 구성하는 데 사용됩니다. 예를 들어 LinearLayout, RelativeLayout, ConstraintLayout 등이 ViewGroup에 해당하며, 이들은 View들을 어떻게 배치할지 결정하는 역할을 합니다. ViewGroup은 View를 상속받아 만들어졌기 때문에, ViewGroup 자체도 View의 일종이라고 볼 수 있습니다. 간단히 말해, View는 화면에 보이는 '무언가', ViewGroup은 그 '무언가'들을 담는 '틀'이라고 생각하면 이해하기 쉽습니다.
읽었다면, 이제 직접 답해볼 차례예요
패스잇 앱에서 이 질문에 말로 답하면 AI가 꼬리질문까지 이어가며 1:1 코칭합니다.
함께 보는 Android / Kotlin 면접 질문
- 안드로이드에서 UI를 구성할 때 사용되는 대표적인 레이아웃(LinearLayout, RelativeLayout, ConstraintLayout) 각각의 특징과 어떤 상황에서 주로 사용되는지 설명해주세요.
- 안드로이드 개발에서 Context는 무엇을 의미하며, 어떤 상황에서 주로 사용되는지 최소 두 가지 이상의 예시를 들어 설명해주세요.
- AndroidManifest.xml 파일의 주요 역할은 무엇이며, 이 파일에 반드시 포함되어야 하는 정보들은 어떤 것들이 있는지 설명해주세요.
- Kotlin의 Null Safety 기능은 무엇이며, 이를 위해 사용되는 '?' (nullable type)와 '!!' (non-null assertion operator)의 역할과 사용 시 주의점에 대해 설명해주세요.
- Activity의 onPause()와 onStop() 메서드는 어떤 차이가 있으며, 각각 어떤 상황에서 호출되고 어떤 작업을 수행하는 것이 적절한가요?
- Fragment의 onCreateView()와 onViewCreated() 메서드의 호출 시점과 역할의 차이점을 설명하고, 각각 어떤 종류의 작업을 수행하는 것이 권장되는지 예시와 함께 설명해 주세요.