[Android Studio] 2. View(뷰)

Pongchi·2022년 2월 19일

Android Studio

목록 보기
2/3

1. 뷰와 뷰의 크기 속성 이해하기

뷰의 속성

뷰(View)는 화면 안에 들어가는 각각의 요소를 말함. 일반적으로 컨트롤이나 위젯이라고 불림. 이러한 뷰를 여러 개 포함하고 있는 것을 뷰그룹(ViewGroup)이라고 한다.

  • ViewGroup 안에서 View의 위치를 지정할 수 있다.
  • ViewGroup 안에 또 다른 ViewGroup 도 넣을 수 있다.
    ( 왜냐하면 ViewGroup은 View를 상속하여 만들어졌기 때문. )

View는 다른 View의 속성을 상속하여 상속받은 View의 특성을 그대로 가질 수도 있다. 예로 버튼은 TextView를 상속해서 만들어졌기 때문에 TextView의 속성을 그대로 갖고 있다.

위젯과 레이아웃으로 구별되는 뷰

안드로이드는 화면을 구성하는 것들을 크게 View와 ViewGroup으로 나눌 수 있다고 했는데, 각각의 역할을 구분하기 위해 View의 종류에 따라 다른 이름으로 부르기도 한다.

  • 위젯(Widget) : 화면에 보이면서 일반적인 컨트롤의 역할을 하는 것
  • 레이아웃(Layout) : ViewGroup 중에서 내부에 View들을 포함하고 있으면서, 그것들을 배치하는 역할을 하는 것

뷰의 크기 속성

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

: layout_width랑 layout_heigh에는 3 종류의 값이 들어갈 수 있음.

  • wrap_content : View에 들어 있는 내용물의 크기에 자동으로 맞춤.
  • match_parent : View를 담고 있는 ViewGroup의 여유 공간을 꽉 채움.
  • 숫자로 크기 지정 : 숫자를 사용해 크기를 지정. 크기는 dp나 px와 같은 단위가 꼭 있어야함.

ConstrainLayout, LinearLayout..

profile
- I'm going to be a ???

0개의 댓글