안드로이드 프로그래밍의 표준 IDE는 Android Studio이다.

Android Studio로 프로젝트를 생성했을때, 프로젝트 구조는 다음과 같다.

 

 

 

Android Studio를 설치한 후 가장 먼저 가상 디바이스(애뮬레이터)를 설치해야 한다.

웹 UI를 만든다면 웹 브라우저를 통해 바로바로 확인이 가능하다. 그럼 안드로이드 UI는 어떻게 확인할 수 있을까?

안드로이드 UI를 확인하는 방법은 두 가지가 있다.

  1. 실제 디바이스(스마트폰)를 USB로 연결하여 실제 단말에서 확인하는 방법
  2. IDE에서 제공하는 가상 디바이스를 이용해 확인하는 방법

 

1번이 정확하겠지만, 상당히 번거롭다. 간단히 2번을 통해 확인하는게 편리하다.

설치하는 방법은 아래 그림의 [Open AVD Manager]를 클릭한다.

 

그런 다음 [Create Virtual Device...] 탭을 누르면 아래와 같은 화면이 나오는데, 원하는 단말을 선택해서 설치하면 된다.

가상 디바이스가 용량이 커서 설치하는데 시간이 조금 걸린다. (864MB 정도 되는듯)

 

이제 안드로이드 프로그래밍을 하기 위한 준비는 모두 끝났다.

 

 

 

안드로이드의 화면 구성


안드로이드 UI 화면 구성은, 화면 1개를 activity라는 단위로 관리하고, 하나의 화면에서 뷰(View)들의 배치를 위한 레이아웃이 오고, 레이아웃 안에서 뷰(View)들이 배치된다. 아래 그림은 하나의 화면에서 구성을 나타낸다.

 

 

 

activity XML 파일을 이용해 UI를 만드는 방법


프로젝트를 생성하면 디폴트로 있는 activity_main.xml 파일을 클릭하면 아래 그림과 같은 화면이 나온다.

 

 

의아하게 생각하지 말자. XML 텍스트 형식으로 보고싶으면 위 그림에 표시해둔 3번에서 [Text] 탭을 클릭하면 된다.

화면을 만들기 위한 코드는 항상 같기 때문에 쉽게 [Design] 탭을 이용해 만들 수 있도록 해놨다.

위 그림에 표시해둔 1번 영역에서 원하는 것을 선택해 2번 영역으로 드래그하면 알아서 XML 코드가 생성된다.

레이아웃을 LinearLayout으로 바꾼 후 Button을 하나 추가했더니 아래와 같은 XML 코드가 생성되었다.

 

위 XML 코드를 보면 android:id 속성의 값으로 "@+id/button"이 설정되어있는데, 앞에 @+id는 무시하고, 뒤에 button이 해당 버튼의 id다. 이 id를 이용해 java 코드에서 버튼에 이벤트를 등록할 수 있다.

public class MainActivity extends AppCompatActivity {
    Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button = (Button) findViewById(R.id.button); // 앞에 R.id는 일단 무시 

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // do something... // 이 부분에 처리 로직을 작성한다.
            }
        });
    }
}

 

findViewById 메서드를 이용해 해당 id값을 가지는 위젯을 button 변수와 연결시킨 후, 

setOnClickListener 메서드를 이용해 이벤트를 등록한다. 이 때, 매개변수로 View.OnClickListener 익명 클래스를 사용.

익명 클래스 대신 람다식을 써도 물론 된다. 난 이제 막 배우는 입장이니 익명 클래스로 리스너 이름 하나하나 봐두기.