1. VIew 계층.

 1) 안드로이드 프로그램의 화면을 구성하는 주요 단위는 액티비티(Activity)이다. 하지만 액티티 자체는 화면에 직접적으로 보이지 않으며 실제로는 이 안에 뷰(View)라는 계층이 사용자에게 보여줄 화면을 구성한다. 즉 여러개의 뷰가 모여 하나의 액티비티를 이루고, 이러한 액티비티 여러개가 바로 하나의 응용 프로그램을 구성하는 것이다.


 2) View에서 파생된 클래스들이 매우 많고 각 클래스가 지원하는 속성이나 매서드 또한 상당히 많기 때문에 상당한 시간을 투자 해야 할 것이다. (아마 안드로이드 프로그래밍 공부의 절반 이상이 View를 포함한 GUI관련 공부가 될 것 같다.)


 3) VIew는 크게 2그룹으로 나뉜다.

  - 1. Widget(위젯) : 화면에 직접적으로 나타나는 사용자 인터페이스를 구성한다. 예를들어 Button, TextView, EditText, RadioButton 등이 있으며 흔히 컨트롤이라고도 부른다.


  - 2. View 그룹 : 직접적으로 보이진 안지ㅏ만 다른 뷰를 담는 컨테이너 역할을 한다. Layout(레이아웃)으로 불린다.



2. View 속성

 - View로부터 파생된 클래스들은 모두 View의 속성을 상속받고있기때문에 우선 View의 속성을 알아보도록하자. (하나하나 하기엔 너무 많기 때문에 중요한것부터 알아보도록하자... 몇개만 해보면 감이 올 것이다.)


 1) id

  - View를 칭하는 이름을 정하는것으로 xml문서에서 이 View를 참조할 때 사용하게된다. 

  - @+id/아이디명

  - 위의 사용법을 갖는다. @는 R.java 에 각 개체에대한 주소를 저장하도록 하게한다. +는 처음 정의할 때 사용하는방법으로 참조할 때는 +를 빼고 사용하면된다.

 2) layout_width, layout_height

  - View의 가로/세로 크기를 설정한다.

  - fill_parent //부모의 주어즌 크기를 다 채운다

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

    200px  // 200픽셀만큼 또는 사용자가 원하는 크기를 직접 정할 수 있다.

 3) background

  - View의 배경색을 지정한다

  - #RGB

    #ARGB

    #RRGGBB

    #AARRGGBB

  - #다음에 16진수로 각 생상 요소의 강도를 지정한다.

 4) padding

  - 안쪽 여백

 5) margin

  - 바깥 여백

 6) visibility

  - View의 표시 유무를 지정한다.

  - visible // 화면에 표시된다

    invisible //화면에 보이지 안게하지만 공간은 차지하고있다.

    gone // 화면에 보이지 않으며 공간역시 차지하지않는다.

 7) focusable

  - 키보드의 포커스(키 입력상태)를 받을지 설정.

  - 기본적인 View는 모두 false이고, EditText와같이 키보드입력이 꼭 필요한경우만 True로 되어있다.











ps. 안드로이드에서 사용되는 단위 설명

단위

 설명

 px

 픽셀

 in

 인치

 mm

 밀리미터

 pt

 포인트

 dp(또는 dip)

 해상도에 독립적인 단위

 sp(또는 sip)

 폰트 가변크기


1. 쓰레드의 생성

 1) 쓰레드를 사용할려면 Thread를 상속받아 run()를 오버라이드하고 실행은 start()로 한다.

 2) run() 할 메소드에 Runnable 인터페이스를 상속받아 run()을 구현하고, 실행하는 곳에서는 start()를 하지 못하기 때문에 Thread를 생성해야 한다. Thread t1 = new Thread(runnable 인터페이스를 상속받은 클래스);


2. 쓰레드의 종료

 1) run() 내부의 작업을 반복문으로 만들어 조건으로 종료를 시킬 수 있다.

 2) exception(예외처리) 으로 해결하는 방법.

  -  시작한 곳에서 종료시 interrupt(); 명령으로 인터럽트를 발생시키면 종료된다.

 try{

while(!Thread.currentThread().isInterrupted()){

System.out.println("I'm alive..."+a);

Thread.sleep(10);

a++;

}

}catch(InterruptedException e){

}finally{

System.out.println("I'm dead....");

}


3. 쓰레드 관리

 1) sleep

 2) stop

 3) wait // synchronized()

'Programming > JAVA' 카테고리의 다른 글

JDBC 설정  (2) 2011.03.24
JAVA IO  (1) 2011.03.24
Java Call by value, Call by reference  (2) 2011.03.24
The AWT Component Library  (1) 2011.03.24
The AWT Event Model  (0) 2011.03.24

+ Recent posts