인터페이스??
by 레오쏭 | 11.07.03 11:51 | 2,480 hit
이번시간은 인터페이스에 대한 전반적인 이해와 레이아웃의 종류를 알아보는 시간을 가져 보도록 하겠습니다.
안드로이드는 상속구조가 잘 되어있습니다. 모든 안드로이드의 상위클래스에는 android.view.View가 있습니다.
우리가 눈에 보이고 터치하는 버튼이나 화면은 모두 View클래스에 상속되었다고 봐도 되죠.
버튼이나 글 등은 컨테이너에 담아 액티비티에 던달됩니다. 이런 컨테이너를 레이아웃이라고 합니다.
앞에서 말했듯이 모든 클래스가 android.view.View를 상위클래스로서 상속을 하고 있다고 하였는데 레이아웃은 직접 상속하고 있는 것이 아니고 android.view.View를 상속한 ViewGroup클래스를 상속하여 구현되었습니다.

이런 컨테이너들로 하여금 우리는 좀 더 많고 다양한 위젯을 화면에 담을수 있습니다. 컨테이너가 없이 프로그램을 작성한다면 우리는 한 화면에 한가지의 위젯밖에 담을수 없습니다. 컨테이너가 있음으로 인해 우리는 트리구조의 다양한 위젯들을 만들수 있습니다.


보시면 ViewGroup는 레이아웃이며 View는 위젯입니다. 우리는 앞서 해봤지만 setContentView를 이용할 것입니다. 그리고 레이아웃은 하위 위젯이나 레이아웃을 포함하고 있습니다.
즉 우리가 인터페이스를 구현하기에 앞서 어떠한 계층구조로 구현할지 생각을 해야 합니다.
안드로이드에서는 기본적으로 이런 계층구조를 분석하기 쉽도록 Hierarchy Viewer이라는 툴을 제공합니다. 이 툴에 대해선 나중 시간에 알아보도록 하겠습니다.

레이아웃의 종류에 대해 알아 보도록 하겠습니다.
레이아웃은 5가지가 있으며 각각은 특징이 있습니다.
LinearLayout : 프로젝트 생성시 기본으로 설정된 레이아웃으로 위아래 좌우로 직석형태의 배치형태를 하고 있습니다.
RelativeLayout: 특정 객체를 기준으로 다른 객체의 위치를 결정합니다.
TableLayout: HTML의 <Table>태그와 비슷합니다.
FrameLayout: 가장 기본적 레이아웃이며 한번에 하나의 위젯만 출력할수 있습니다. 단독으로는 거의 쓰이지 않으며 여러 레이아웃과 조합해서 씁니다.
AbsoluteLayout: x,y좌표로 위젯의 위치를 정합니다. 그래서 사용하기가 쉽지만 핸드폰마다 해상도가 다르고 지원하는 액정의 사이즈가 다르므로 핸드폰에 따라 프로그램이 엉망이 될수 있습니다. 그래서 구글에서도 공식적으로 사용을 하지말아달라고 권고하고 있습니다. (FrameLayout과 RelativeLayout을 혼용하면 대체 가능하다고 팁을 주고 있습니다.)

오늘은 인터페이스에 대한 내용과 레이아웃의 종류에 대해 배워봤습니다. 다음시간부터는 위젯들을 하나씩 배울것이며 마지막에는 배운 위젯들을 레이아웃에 배치하는것에 대해 배울것입니다..^^
오늘도 수고 하셨습니다~


[이 게시물은 더어플님에 의해 2016-07-12 15:23:56 개발 꿀팁에서 복사 됨]
추천 5

댓글 2

♣서로해♣ 2011.07.04 17:20
휴...전과목도 이해가 안가는데.
바쁘당 바뻐....ㅎㅎ
레오쏭 2011.07.05 11:08
서로해님 덕분해 할맛이 납니다~^^

이거슨 꿀팁 다른 게시글

게시물 더보기

이거슨 꿀팁 인기 게시글

  1. 알뜰폰 쓸 때 인터넷과 결합하려면2,639
  2. 해외여행 갈 때 데이터로밍 간편하고 싸게 쓰…2,506
  3. 기프티콘은 컬쳐랜드 쿠폰거래소에서 이용하…2,392
  4. 클리오 루즈힐 블룸 다이아 립스틱 5종 홈쇼…2,493
  5. 데이터 10GB+1Mbps 무제한 6,500원부터 쓸수…2,353
  6. 3월 알뜰폰 가성비 평생요금제 2가지 6GB 6천…2,098
  7. 3Mbps 속도 데이터무제한 최저가 검색2,100
  8. 컬쳐랜드에 쿠폰거래소가 새롭게 생겼어요2,062
  9. 해외여행 데이터로밍 일본 태국 대만 최저가…2,042
  10. 아싸컴에서 천만원 이벤트 하는 거 찾았다2,011

2024.05.20 00:00 기준