728x90

리니어 레이아웃은 하위뷰(자식뷰)를 일렬로 배치하는 레이아웃이다, ( 즉 한 방향으로만 배치 한다는 뜻)

 

리니어의 방향은 수평(Horizontal), 수직(Vertical) 2가지 방향만 존재한다.

 

수평 방향은 좌에서 우로 하나씩 배치

수직 방향은 위에서 아래로 하나씩 배치가 된다.

 

xml코드안에서는 android:orientation 속성을 horizontal, vertival로 설정한다.

자바코드안에서는 setOrientation(LinearLayout.HORIXONTAL l LinearLayout.VERTICAL)로 설정한다.

 

리니어 레이아웃의 특징

 

- 기본값은 수평 정렬이다.

- 리니어레이아웃에 붙이는 순서대로 배치된다.

- 별도의 지정이 없는 한 뷰 사이의 공백이 없다.

 

정렬 지정

 

center_horizontal : 수평으로 중앙에 배치한다.

left : 컨테이너의 왼쪽에 배치한다, 크기는 바뀌지 않는다.

right : 컨테이너의 오른쪽에 배치한다.

fill_horizontal : 수평 방향으로 가득 채운다.

center_vertical : 수직으로 중앙에 배치한다.

top : 컨테이너의 상단에 배치한다. 크기는 바뀌지 않는다.

bottom : 컨테이너의 하단에 배치한다.

fill_vertical : 수직 방향으로 가득 채운다.

center : 수평으로나 수직으로 중앙에 배치한다.

fill : 컨테이너를 가득 채우도록 수직, 수평 크기를 확장한다.

 

베이스 정렬

 

android:baselineAligned="true"

 

높이가 다른 차일드 뷰를 수평으로 나란히 배치할 때 아래쪽 면을 가지런히 정렬할 것인가 아닌가를 지정한다. 폰트 높이가 제각각인 문자열들을 출력할 때 유용하다. 디폴트가 true 이므로 문자열 높이가 달라도 보기 좋게 출력된다.

 

 

차일드 영역 분할

 

android:layout_weight="숫자"

 

layout_weight 속성은 부모 레이아웃의 남은 영역을 얼마나 차지할 것인가를 결정하는 비율 값이다.

이 값이 높을수록 많은 영역을 차지한다. 중요도가 0이면 자신의 고유한 크기만큼만 차지하며 중요도가 1이상이면 형제 뷰와의 비율에 따라 부모의 영역을 균등하게 배분한다.

 

마진과 패딩

 

android:layout_margin="10dip"

android:padding="10dip"

 

padding 속성은 뷰와 내용물 간의 간격을 지정한다.

layout_margin 속성은 뷰와 부모와의 간경을 지정하며 근처에 형제 뷰가 있으면 형제 뷰와의 간격도 마진 만큼 떨어진다. 

 

padding, layout_margin 속성 값을 대입하면 4면 모두 동일한 여백이 적용 되고

paddingLeft, paddingTop, paddingRight, paddingBottom (layout_marginLeft, layout_marginTop, layout_marginRight, layout_marginBottom) 으로 각 면에 개별적인 여백도 지정할수 있다. 

 

 

 

 

 

 

 

728x90

'Android' 카테고리의 다른 글

안드로이드 AbsoluteLayout, FrameLayout, TableLayout  (0) 2012.07.27
안드로이드 렐러티브 (Realtive Layout)  (0) 2012.07.27
안드로이드 Button(버튼)  (0) 2012.07.27
안드로이드 ImageView  (0) 2012.07.27
안드로이드 TextView  (0) 2012.07.27
Posted by 정망스
,
728x90

Button 이란?

Button은 사용자가 누를 수 있는 형태의 위젯이다.

누르고 있거나(press), 클릭하거나 등의 행동을 할 수 있는 뜻이다.

 

버튼은 따로 등록된 속성은 없다 다만 TextView를 상속받았기 때문에 TextView가 가지고 있는 모든 속성을 사용 할 수 있다.

대신 Button은 클릭이라는 행동을 통해 사용자로부터 입력을 받아 들일 수 있다 이것을 안드로이드 에서는 이벤트라고 한다.

 

 

 

 

 

728x90

'Android' 카테고리의 다른 글

안드로이드 렐러티브 (Realtive Layout)  (0) 2012.07.27
안드로이드 리니어 레이아웃(LinearLayout)  (0) 2012.07.27
안드로이드 ImageView  (0) 2012.07.27
안드로이드 TextView  (0) 2012.07.27
안드로이드 뷰(View)의 속성  (0) 2012.07.27
Posted by 정망스
,

안드로이드 ImageView

Android 2012. 7. 27. 16:14
728x90

ImageView 란?

Icon 같은 이미지를 표시해주는 위젯이다.

ImageView Class 는 다양한 형태의 이미지를 공급받을 수 있는데 리소스, 컨텐트 프로바이더, 웹상의 특정 이미지, 파일등의 이미지를 표시할 수 있다.

 

ImageView 속성

  1. android:adjustViewBounds - setAdjustViewBounds(boolean)  
     이미지의 가로,세로의 비율을 맞추기 위해 이비지뷰의 크기를 조정할 것인가를 지정한다.

  2. android:baseline - setBaseline(int)
    해당 뷰를 기준선으로 하여 오프셋 한다.

  3. android:baselineAlignBottom - setBaselineAlignBottom(boolean)
    true이면 이미지 뷰의 하단 가장자리를 기반으로 정렬 한다.

  4. android:cropToPadding
    만약에 true로 설정되어 있다면 여백을 맞추기 위해 이미지의 일부분을 잘라 버린다.

  5. android:maxHeight - setMaxHeight(int)
    이미지의 최대 높이를 설정한다.

  6. android:maxWidth - setMaxWidth(int)
    이미지의 최대 폭을 지정한다.

  7. android:scaleType - setScaleType(ImageView.ScaleType)
    이미지의 크기를 재조정하거나 움직일때 해당 이미지를 어떻게 조절할 것인가를 결정한다.

    matrix, center, centerCrop, centerInside, fitXY 중에 설정가능하다.

     

  8. android:src - setImageResource(int)
    출력할 이미지를 설정하는 부분. 설정하지 않으면 이미지가 나오지 않으며, RGB형태의 색상, 리소스형태의 이미지 출력이 가능하다.

     

  9. android:tint  - setColorFilter(int,PorterDuff.Mode)
    이미지에 엷은색(색조)를 입힌다. RGB형태로 지정하며 이미지 위에 살짝 덮혀서 출력된다.

 

 

728x90

'Android' 카테고리의 다른 글

안드로이드 리니어 레이아웃(LinearLayout)  (0) 2012.07.27
안드로이드 Button(버튼)  (0) 2012.07.27
안드로이드 TextView  (0) 2012.07.27
안드로이드 뷰(View)의 속성  (0) 2012.07.27
안드로이드 뷰(view)의 계층  (0) 2012.07.27
Posted by 정망스
,

안드로이드 TextView

Android 2012. 7. 27. 16:04
728x90

TextView 란?

 

TextView는 글자를 보여주는 기능을 하며 선택적으로 수정이 가능한 기능을 제공한다.

TextView는 텍스트 편집기 역할을 하지만 기본적으로 편집이 불가능 하다.

그래서 TextView의 하위 클래스를 두어 편집이 가능한 형태 (EditText)를 따로 만들어 두었다.

 

TextView 속성

 

대표적인 속성에 대해서만 설명하겠습니다.

 

android:text : 화면에 출력할 문자열을 지정한다. 직접입력할 수도 있고 리소스로부터 가져올수도 있다.

android:textColor : 문자열의 색상을 설정한다.

android:textStyle : 폰트 속성을 지정한다.(normal, italic, bold)

android:typeFace : 글꼴을 선택한다.

android:layout_width : 텍스트뷰의 폭을 설정한다.

android:layout_height : 텍스트뷰의 높이를 설정한다.

android:singleLine : 텍스트를 한줄로만 출력한다.

 

 

728x90

'Android' 카테고리의 다른 글

안드로이드 Button(버튼)  (0) 2012.07.27
안드로이드 ImageView  (0) 2012.07.27
안드로이드 뷰(View)의 속성  (0) 2012.07.27
안드로이드 뷰(view)의 계층  (0) 2012.07.27
안드로이드 에뮬레이터 사용법  (0) 2012.07.27
Posted by 정망스
,
728x90

안드로이드에서 자주 사용되는 속성들!

이름이 아주 직관적이어서 이름만으로도 의미를 파악하기 쉽게 되있다.

속성이름은 XML 문서에도 그대로 적용된다.

 

(id)

뷰를 칭하는 이름을 정의한다. 코드나 XML 문서에서 이 뷰를 참조할 때 id를 사용 하므로 의미를 잘 설명할 수 있는 이름을 붙여야 한다.

 

@[+] id/ID

 

@ : id를 리소스 (R.java)에 정의하거나, 참조한다는 뜻이며 무조건 붙여야 한다.

+ : ID를 새로 정의한다는 뜻이다, 처음 새로 정의할 때만 붙이고 참조할 때는 붙이지 않는다.

id : 예약어 이므로 그대로 쓰면되고 / 뒤에 원하는 이름을 작성한다.

ID : 고유한 명칭이므로 명칭 규칙에 맞추고, 같은 범위에 속한 뷰끼리 중복되어서는 안 된다.

 

android:id="@+id/name"

 

XML 문서에 ID를 지정해 놓으면 이 이름이 R.java에 정수 상수로 정의 된다. 코드에서 이 뷰를 참조할 때는 findViewById라는 메서드를 호출하여 인수로 참조할 뷰의 id를 전달한다.

예를 들어 name 위젯의 텍스트를 변경하고 싶다면 findViewById(R.id.name) 식으로 호출 한후 setText 메서드를 호출한다.

 

id는 뷰의 이름을 정의하는 중요한 속성이지만 모든 뷰에 id를 의무적으로 지정할 필요는 없다. 코드에서 참조할 필요가 없는 위젯은 보통 id를 생략한다. 예를 들어 배경에 이미지를 출력하는 이미지 뷰는 XML 문서에 배치되어 있으면 될 뿐 이후에 참조할 일은 없으므로 굳이 id를 줄 필요가 없다.

 

(layout_width, layout_height)

뷰의 폭과 높이를 지정한다. 뷰는 부모 뷰(또는 액티비티)안에 배치되는데 이 속성이 지정하는 만큼의 크기로 배치된다. 수평, 수직 각 방향에 대해 크기를 지정할 수 잇으며 다음 세 가지중 하나의 값을 가진다.

 

fill_parent : 부모의 주어진 크기를 다 채운다.

wrap_content : 내용물의 크기만큼만 채운다.

정수 크기 : 지정한 크기에 맞춘다.

 

 

 

(background)

뷰의 배경을 어떻게 채울 것인가를 지정한다. 

 

(padding)

뷰와 내용물간의 간격을 지정한다.

 

Padding : 4방향에 동일한 여백이 적용

PaddingLeft : 왼쪽변에 대해 여백이 적용

PaddingRight : 오른쪽변에 대해 여백이 적용

PaddingTop : 윗쪽변에 대해 여백이 적용

PaddingBottom : 아랫변에 대해 여백이 적용

 

(visibility)

뷰의 표시 유무를 지정한다. 별다른 지정이 없으면 당연히 보이는 상태로 배치되지만 이 속성을 지정하면 디자인 타임에 숨겨 놓았다가 런타임에 필요할 때만 보이도록 할 수도 있다.

 

visible : 보이는 상태

invisible : 숨겨진 상태이되 자리는 차지

gone : 숨겨지며 자리도 차지하지 않는다.

 

(clickable, longClickable)

마우스 클릭 이벤트를 받을 것인지, 롱클릭 이벤트를 받을 것인지를 지정

클릭은 손가락으로 뷰를 누르는 것이며 롱클릭은 누른 채로 잠시 기다리는 것이다. 진위형이므로 true 또는 false 둘 중 하나의 값을 지정한다.

 

(focusable)

키보드 포커스를 받을 수 있는지를 지정한다. 뷰 클래스 자체는 디폴트로 포커스를 받지 않도록 되어 있으므로 키 입력을 받으려면 이 속성을 true로 변경해야 한다.

(예외적으로, 에디트나 버튼처럼 사용자의 입력을 받아야 하는 파생클래스는 이 속성의 디폴트가 true로 지정되어 있다)

 

 

 

 

 

728x90

'Android' 카테고리의 다른 글

안드로이드 ImageView  (0) 2012.07.27
안드로이드 TextView  (0) 2012.07.27
안드로이드 뷰(view)의 계층  (0) 2012.07.27
안드로이드 에뮬레이터 사용법  (0) 2012.07.27
안드로이드 XML 레이아웃의 장점  (0) 2012.07.27
Posted by 정망스
,


맨 위로
홈으로 ▲위로 ▼아래로 ♥댓글쓰기 새로고침