본문 바로가기

안드로이드/부스트코스 안드로이드 기본편

[안드로이드 기본] 안드로이드 뷰에 대한 기본 지식

안드로이드 기본 공부에 들어가기 앞서 무작정 뷰를 공부하지 말고,

기본으로 알고 있어야하는 뷰와 관련된 용어들을 정리하고 들어가자!

 

  • View : 사용자 인터페이스를 구성하는 클래스들의 최상위 클래스

    • View - 사용자 인터페이스 구성을 위해 사용할 수 있는 클래스들의 대표 이름들

      • TextView, EditText, Spinner, Button 등

    • ViewGroup - ViewGroup은 다른 뷰를 포함하거나 구성하는 클래스들의 상위 클래스

      • View Container - 다른 뷰를 포함할 수 있는 컨테이너

        • ListView, ExpandableListView, GridView, Gallery, ViewFlipper, ImageSwitcher, TextSwitcher, ScrollView 등

      • Layout - 다른 뷰를 배치할 수 있는 배치 관리자

        • LinearLayout, FrameLayout, RelativeLayout, TableLayout 등

 

  • View의 크기

    • wrap_content: 포함된 내용을 보여줄 수 있는 크기로 설정

    • match_parent: 부모 뷰의 내부 여백(padding)을 제외한 크기로 설정

    • fill_parent: match_parent와 동일하다.

      • fill_parent와 match_parent의 차이점은??

        • 안드로이드 2.1까지는 wrap_content와 fill_parent만 존재했다.

        • 안드로이드 2.2부터 match_parent가 추가되었다.

          • 그 이유는 기존에 존재하던 fill_parent를 보면 실제로 부모 뷰를 가득 채우는 것이라고 오해할 수 있는 이름을 가진 속성이다. 하지만 이 속성은 부모 뷰의 내부 여백(padding)을 제외한 만큼만 가득 채우게 된다.

          • 그래서 fill_parent 대신에 사용할 수 있는 좀 더 직관적인 match_parent를 추가한 것이다.

  • 치수 단위

    • px : 픽셀을 의미하며, 화면의 밀도와는 상관없는 치수이다.

    • dip, dp : dip는 Density_independent pixel의 약자이며, 여러 밀도의 화면에서 일정한 크기를 보여줄 수 있도록 제공되는 치수이다. dip를 줄여서 dp라고도 사용한다.

      • pixel과 dip의 관계

        • pixels = dips * (density / 160)로 정의된다. 그래서 160dpi화면에서는 1dip 는 1pixel이고, 240dpi 화면에서는 1dip가 1.5pixel이 된다.

    • sp : Scale-indenpendent pixel의 약자이며, dp와 유사한 기능을 한다. 추가적으로 사용자 설정에 따라 변경되는 텍스트 크기를 반영해준다.

    • pts : 포인트(points)의 약자이며, 1 포인트는 1/72이다.

    • in : 인치(inches)의 약자이다.

    • mm : 밀리미터(millimeters)의 약자이다.

  • 패딩과 마진

    • 패딩 : 뷰 내부의 내용(Content)과의 여백

    • 마진 : 뷰 외부와의 여백

패딩과 마진

  • 이미지 형식

    • .png : PNG 이미지

    • .9.png : 나인패치 이미지라 불리며, 이미지 확대 시 특정 영역만 확대할 수 있게 하여 이미지 전체 모양을 일정하게 유지시켜 주는 이미지를 말한다.

    • .jpg : JPG 이미지

    • .gif : GIF 이미지

    • 가능하면 .jpg, .png 사용을 권장하고, 이미지를 프로젝트에 추가할 때는 숫자, 언더바(_), 영문 소문자만을 사용하되, 이미지 이름은 반드시 영문 소문자로 시작해야한다.