프로그래밍/Android2010.06.21 11:42
앞서 보았던 자동으로 생성된 HelloWorld 프로젝트에 종료 버튼(Button)을 추가해 보겠습니다.
우선 버튼에 표시될 문자열을 문자열 리소스에 추가하고, 레이아웃 리소스에 Button 요소를 추가하겠습니다.
마지막으로 Activity 클래스에 Button 클릭 시에 동작하는 코드를 추가하겠습니다.

■ 문자열 추가

버튼에 표시될 문자열을 [res/values/strings.xml] 에 추가합니다. 아래 그림과 같이 [Resouces] 탭에서 [Add] 버튼 클릭 후 String 요소를 추가합니다.


추가된 String 엘리먼트에 아래와 같이 Name에 "finish_label"을 Value에 "Finish"를 속성값으로 입력합니다.


버튼을 추가한 strings.xml 은 다음과 같으며 위와 같은 방식이 아닌 5라인과 같이 직접 코드를 추가해도 됩니다.
    Hello World, HelloWorldActivity!    HelloWorld	Finish

■ 레이아웃에 Button 추가

[res/layout/main.xml] 파일을 연 후 아래 그림의 디자인 모드에서 [Views] 에 있는 Button 을 Drag&Drop 하거나
오른쪽 마우스를 클릭하여 컨텍스트 메뉴에서 [Add...]를 선택하여 Button 요소를 추가합니다.


추가된 버튼에는 "Button01"이라는 문자열이 자동으로 붙는데 이것을 앞에서 추가한 문자열로 수정하기 위해서는
아래 그림과 같이 하단의 [Properties] 탭에서 "Text" Property를 [finish_label]로 설정합니다.


수정된 strings.xml 파일은 다음과 같으며, 이것 역시 직접 코드를 추가해도 됩니다. 

■ Activity 클래스에 Click 이벤트 추가

Activity 클래스에 버튼을 클릭했을 때 동작하는 코드를 아래와 같이 추가합니다.
package kr.juhoi.helloworld;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class HelloWorldActivity extends Activity implements OnClickListener {    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                Button button = (Button)findViewById(R.id.Button01);                button.setOnClickListener(this);    }	public void onClick(View v) {		// TODO Auto-generated method stub		if (v.getId()==R.id.Button01) {			finish();		}	}}
9라인에서 OnClickListener 인터페이스를 implements 하여 21라인의 onClick 메소드를 구현합니다.
16라인에서 findViewById 메소드를 사용하여 Button 엘리먼트를 찾은 후 18라인에서 setOnClickListener 메소드로
버튼 클릭 시 이벤트를 등록하게 됩니다.

버튼이 추가된 프로그램의 실행 화면은 아래와 같습니다.


저작자 표시 비영리 변경 금지
신고

'프로그래밍 > Android' 카테고리의 다른 글

종료 버튼(Button) 추가  (0) 2010.06.21
시작은 Hello, World~~  (0) 2010.06.20
Android 어플리케이션 개발환경 구축  (0) 2010.06.15
Android 어플리케이션 개발 시작  (0) 2010.06.10
Posted by JuHoi
TAG Android
프로그래밍/Android2010.06.20 17:58
새로운 프로그래밍 언어를 학습한다던지... 새로운 프레임워크를 도입한다던지 하면 우리들은 의례적으로 "Hello, World"를  먼저 찍어봅니다. 콘솔이나 화면에 "Hello, World"를 보고서야 비로서 내가 무엇인가를 하고 있구나... 또 무엇인가 할 수 있게구나... 하는 생각이 드는 것 같습니다.

그런면에서 Eclipse에서의 안드로이드 개발은 "Hello, World"가 기본인 프로그램입니다. 아무 것도 하지 않아도 새로운 프로젝트를 생성한 후 실행하면 에뮬레이터에 "Hello, World"가 출력됩니다.

그러한 과정과 자동으로 생성되는 파일 및 구성을 살펴보도록 하겠습니다.

새로운 프로젝트 생성

아래 그림과 같이 [File > New > Project] 메뉴를 선택하여 [New Project] 창에서 [Android Project]를 생성합니다.


또는, [Package Explorer]에서 오른쪽 마우스 클릭하여 Context 메뉴에서 [New > Android Project]를 생성합니다.


[New Andorid Project] 창에서 각 설정값을 아래와 같이 입력 후 [Finish] 버튼을 클릭합니다.

- Project Name : HelloWorld
- Application Name : HelloWorld
- Package Name : kr.juhoi.helloworld
- Create Activity : HelloWorldActivity
- Min SDK Version : 8



생성된 프로젝트의 구성은 아래와 같습니다.


■ 프로젝트의 구성(자동으로 생성된 파일)

ㅇ src/HelloWorldActivity.java
package kr.juhoi.helloworld;

import android.app.Activity;
import android.os.Bundle;

public class HelloWorldActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}
Android 어플리케이션의 실행은 프로젝트를 생성할 때 지정한 Activity 클래스의 onCreate 메소드에서 시작합니다.
Activity는 사용자 인터페이스의 기본 단위라고 할 수 있으며 이것은 데스크탑 어플리케이션의 개발 시 Window나 Form과 유사하다고 할 수 있습니다.
화면에 표시될 View를 설정하기 위해  11라인에서 setContentView() 메소드를 호출하고 있습니다. 이 때 설정할 View로
R.layout.main 이라는 상수를 지정하고 있습니다. 이 상수는 [gen/R.java] 클래스에 명시되어 있으며 [res/layout/main.xml]을 참조하고 있습니다.

ㅇ gen/R.java
/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package kr.juhoi.helloworld;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int icon=0x7f020000;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class string {
        public static final int app_name=0x7f040001;
        public static final int hello=0x7f040000;
    }
}
위 클래스는 프로그램에서 사용되는 문자열, 이미지, 화면 레이아웃 등의 리소스 정의를 참조하기 위한 클래스로 Eclipse에서 자동으로 작성됩니다. 개발자는 변경해서는 안됩니다.

ㅇ res/layout/main.xml



Android 어플리케이션은 프로그램에서 레이아웃을 기술하지 않고 위 파일과 같이 XML로 레이아웃을 기술합니다.
3 라인의 android:text 속성의 "@string/hello" 값은 아래에 나오는 문자열 리소스(res/values/string.xml)에 정의한 hello를 가르킵니다.
이러한 레이아웃 파일은 XML을 직접 편집할 수도 있으며 아래 그림과 같이 이클립스에서 제공하는 디자인 모드에서 수정할 수도 있습니다.


ㅇ res/values/string.xml


    Hello World, HelloWorldActivity!
    HelloWorld

화면에서 표시되는 문자열을 위와 같이 정의합니다. 앞서 보았던 hello 값을 확인 할 수 있습니다.

■ 프로젝트의 실행

[Ctrl + F11] 또는 [Run > Run]을 선택한 후 아래의 [Run As] 창에서 [Android Application]을 실행합니다.


아래와 같이 에뮬레이터가 실행되며 화면에 "Hello World, HelloWorldActivity!"가 표시됩니다.



 

 

저작자 표시 비영리 변경 금지
신고

'프로그래밍 > Android' 카테고리의 다른 글

종료 버튼(Button) 추가  (0) 2010.06.21
시작은 Hello, World~~  (0) 2010.06.20
Android 어플리케이션 개발환경 구축  (0) 2010.06.15
Android 어플리케이션 개발 시작  (0) 2010.06.10
Posted by JuHoi
프로그래밍/Android2010.06.15 00:41
1. JDK 설치
2. Eclipse 설치
3. Android SDK 설치
4. ADT(Andriod Development Tools) 설치 - Eclipse Android Plugin
5. Eclipse 에 Android SDK 경로 지정
6. Virtual Device 생성

■ JDK 설치

ㅇ JDK 다운로드 및 설치 : http://java.sun.com/javase/downloads/


ㅇ 환경 변수 설정 : 내 컴퓨터 > 속성(시스템 등록 정보) > 고급 > 환경 변수

  • JAVA_HOME = C:\Program Files\Java\jdk1.6.0_17;


  • Path = %JAVA_HOME%\bin;


  • CLASSPATH = .;C:\Program Files\Java\jdk1.6.0_17\lib\tools.jar;

ㅇ 설치 확인



■ Eclipse 설치

ㅇ Eclipse 다운로드 : http://www.eclipse.org/downloads/

  • Java EE(Enterprise Edition) 의 기능은 필요하지 않으므로 Eclipse IDE for Java Developers 를 다운로드합니다.
  • 압축파일로 제공하므로 적당한 공간에 압축을 해제합니다.
  • 실행 화일 : eclipse.exe



■ Android SDK 설치

ㅇ Android SDK 다운로드 : http://developer.android.com/sdk/

  • 압축파일로 제공하므로 적당한 공간에 압축을 해제합니다.



■ ADT(Andriod Development Tools) 설치 - Eclipse Android Plugin

ㅇ Eclipse 에서 Android 어플리케이션을 개발하기 위해 구글에서 제공하는 Android 개발 툴(ADT: Android Development Tools) 플러그인을 사용합니다.

ㅇ 다른 플러그인과 동일한 방법으로 설치합니다.

  • [Help] 메뉴의 [Install New Software] 선택
  • Install 창에서 [Add] 버튼 클릭
  • Add Site 창에서 Name을 [Android Plugin], Location에 [http://dl-sll.google.com/android/eclipse/] 입력
  • [Developer Tools] 체크 후 [Next] 클릭

  • [Install Details]에 [Android Development Tools]와 [Android DDMS] 모두 확인 후 [Next] 클릭

  • 라이센스 확인 후 [I accept the terms of the license agreements] 선택 후 [Finish] 클릭

  • 설치 종료 - Eclipse 다시 시작


■ Eclipse 에 Android SDK 경로 지정 - Package 설치

ㅇ [Window > Preference] 창에서 좌측의 [Android]를 선택

ㅇ 우측의 SDK Location 에 설치한 디렉토리를 지정한 후 [Apply] 클릭


ㅇ [Window > Android SDK and AVD Manager] 창에서 좌측의 [Available Packages] 선택

ㅇ 우측의 설치할 패키지를 선택 후 [Install Selected] 클릭



■ Virtual Device 생성

ㅇ [Window > Android SDK and AVD Manager] 창에서 좌측의 [Virtual Devices] 선택 후 우측의 [New...] 버튼 클릭


ㅇ Name 에 AVD2.2, Target 에서 Android 2.2 - API Level 8 선택 후 [Create AVD] 버튼 클릭


ㅇ [Window > Android SDK and AVD Manager] 창에서 우측의 [Start] 버튼 클릭 - 에뮬레이터 실행


※ 에뮬레이터 관련 참고사항
  • command 창에서 에뮬레이터 실행 : C:\...\> emulator @AVD2.2
  • 화면 방향 바꾸기 : Ctrl + F11 또는 Ctrl + F12

저작자 표시 비영리 변경 금지
신고

'프로그래밍 > Android' 카테고리의 다른 글

종료 버튼(Button) 추가  (0) 2010.06.21
시작은 Hello, World~~  (0) 2010.06.20
Android 어플리케이션 개발환경 구축  (0) 2010.06.15
Android 어플리케이션 개발 시작  (0) 2010.06.10
Posted by JuHoi
프로그래밍/Android2010.06.10 00:52
얼마전부터 조금 늦게나마 Android 어플리케이션 개발에 대해 학습을 시작했습니다.
개인적인 기록 차원에서 포스팅을 하기로 하였습니다. ^.^

※ 참고 사이트
- Android 웹사이트 : http://www.android.com/
- Android Developer 웹사이트 : http://developer.android.com/
- Android Market : http://www.android.com/market/
- Android Open Source Project 웹사이트 : http://source.android.com/
- 안드로이드펍(국내 커뮤니티) : http://www.androidpub.com/
- 칸드로이드(국내 커뮤니티) : http://www.kandroid.org/

ㅇ Android 개요

Google Android는 Linux 기반의 Operation System, Middleware, Key Application, 개발 툴 군을 포함하는
모바일 오픈 소스 플랫폼입니다.
또한, Java 프로그래밍 언어를 이용하여 어플리케이션 개발이 가능하도록 SDK 등 Eclipse 개발환경을 제공합니다.
휴대폰 에뮬레이터(Emulator)가 있어 실제 휴대폰이 없는 경우에도 어플리케이션 개발이 가능합니다.

ㅇ Android 실행 환경(아키텍처)


위 그림과 같이 Application, Application Framework, Libraries, Android Runtime(Core Libraries, Dalvik), Linux Kernel로 나누어져 있습니다.

Android 어플리케이션은 휴대폰과 같이 작은 메모리 환경에서의 동작을 고려하여 만든 Dalvik(달빅)이라는 독자적으로 만든 가상머신상에서 작동을 합니다.
저작자 표시 비영리 변경 금지
신고

'프로그래밍 > Android' 카테고리의 다른 글

종료 버튼(Button) 추가  (0) 2010.06.21
시작은 Hello, World~~  (0) 2010.06.20
Android 어플리케이션 개발환경 구축  (0) 2010.06.15
Android 어플리케이션 개발 시작  (0) 2010.06.10
Posted by JuHoi