ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 자동 생성된 첫 안드로이드 .java 소스 분석
    Programing/Android 2010. 10. 3. 10:35


    위의 그림은 '안드로이드 프로그래밍 정복'이라는 책의 예제로 첫번째 안드로이드 프로그램 프로젝트를 생성시킨후 메인 .java 메인소스 부분이다.

    가장 위의 팩키지 부분은 새 프로젝트 생성시 지정한 이름으로 자동으로 만들어진다.

    public class AndroidFirst extends Activity {
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
        }
    }

    실질적으로 위의 단 4줄의 코드로 실행되어 지는데 간단하지만 하나하나 분석해보자

    우선 AndroidFirst 라는 클래스는 Activity 클래스를 상속받는다.(extends)

    다음은 onCreate 라는 메서드가 보이는데 부모 클래스(애티비티)로 부터 재 정의 하는 클래스로 Bundle savedInstanceState를 매개변수로 한다.
    메서는 안에서는 다음의 두가지 메서드를 호출하며 초기화 하고 있다.

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    안드로이드 액티비티의 표준 초기화를 수행하고, setContentView 메서드를 호출해 액티비티에 내용물을 채우는 과정이다.
    R.layout.main은 XML 레이아웃의 리소스 ID이다.

    ※ setContentView 의 매개변수 타입에 따라 레이아웃을 정의하는 두 가지 방법이 있다.

    1. XML파일에 레이아웃을 기술하고 레이아웃 파일의 리소스 ID를 메서드로 전달한다. 디자인 타미에 미리 레이아웃을 정의해 둘 수 있어 복잡한 모양을 만들 수 있으며 관리하기도 편하다.

    2. 뷰 객체를 동적으로 생성한 후 메서드로 전달한다. 실행중에 동적으로 레이아웃을 구성할 수 있는 이점이 있다.


Designed by Tistory.