특별한딸기이야기

블로그 이미지
딸기다운 사이버 공간을 만들고 싶어하는 특별한 딸기의 블로그입니다.
by 특별한녀석
  • 5978Total hit
  • 16Today hit
  • 47Yesterday hit

최근에 달린 레몬펜 쪽지

Statistics Graph

'2008/05/03'에 해당되는 글 2건

  1. 2008/05/03
    스크린 터치 이벤트
  2. 2008/05/03
    바인딩
오늘 딸기가 알아 낸것은 작습니다.

터치 이벤트죠.

안드로이드 화면을 사용자가 건드렸을 때 그에 따른 반응을 보여줘야 할 때 쓰면 될 것 같습니다.

그럼 임포트를 해야 겠지요.

import android.view.MotionEvent; 라고 넣어 줍시다.

그리고 public boolean onTouchEvent(MotionEvent event) 함수를 만드세요.

그럼 끝입니다,

농담입니다 ^^;;

자 그 함수 안에 다음 코드를 넣습니다.

int action = event.getAction();

터치 스크린에서 어떤 행동을 하는지 확인하기 위해 넣은 것입니다.

MotionEvent.ACTION_DOWN
MotionEvent.ACTION_UP

등의 상수가 있습니다.

MFC에서 선 그리기 예제를 해 보신 분이라면 쉽게 이해하실 수 있을 것입니다.

누르고 움직이고 떼고

위 과정을 통해 자유로운 선을 그릴 수 있듯이 스크린에서 감응하는 값을 계속 받아와서 처리하면 되는 것입니다.

switch(action)
     {
     case MotionEvent.ACTION_DOWN :
      start_w = (int)event.getX();
      start_h = (int)event.getY();
      break;
     case MotionEvent.ACTION_UP :
      end_w = (int)event.getX();
      end_h = (int)event.getY();
      break;
     }

단순 직선 그리기 위한 코드입니다.

딸기의 오늘 이야기는 여기 까지입니다.

좀더 자세한 자료를 원하시는 분은...

http://code.google.com/android/samples/ApiDemos/src/com/google/android/samples/graphics/TouchPaint.html

위의 주소로 가보시기 바랍니다.

'딸기 공부방 > 안드로이드' 카테고리의 다른 글

스크린 터치 이벤트  (0) 2008/05/03
바인딩  (0) 2008/05/03
안드로이드 어플리케이션 삭제  (2) 2008/04/07
안드로이드 교육용 문서  (0) 2008/04/01
안드로이드 API 정리  (0) 2008/03/04
사소한 질문  (0) 2008/03/03
TRACKBACK 0 AND COMMENT 0

사용자 삽입 이미지


안드로이드에서 바인딩이란 무엇일까?

영어가 약하고 눈치로 안드로이드 어플리케이션을 개발 중인 나로써는 정확히 말하기 어렵다.

나는 혹시나 나처럼 초보 개발자에게 조금이나마 도움이 될까 해서 이렇게 글을 남겨본다.

바인딩이란 배열 비슷한 것이 아닌가 싶다.

마치 MFC에서 배열에 관련된 클래스를 제공하듯 함수를 제공하는 것이 아닐까...

그럼 안드로이드에서 배열이 아닌 바인딩을 꼭 써야만 하는 경우가 있을까?

그런 경우가 있다.

예를 들어 android.widget.Gallery를 사용하려면 반드시 바인딩이 필요하다.

기껏 Gallery g = new Gallery(this); 라는 문장을 넣었는데 이 속에 어떻게 그림을 넣을 것인가?

바인딩 밖에 없다.

그럼 바인딩은 어떻게 하는 것일까?

바인딩은 android.widget.AdapterView에서 파생된 클래스에서 한다.

나는 직접 AdapterView를 상속해 보았으나 실패...

이클립스에서 클래스가 아니라고 에러 메세지를 보낸다.

이렇게 저렇게 하다 public class Image_binder extends BaseAdapter 라고 입력하니 이제서야 통과다.

그런데 경고 메세지가 들어 온다.

개발자가 반드시 작성해야 하는 함수들이 구현이 안 되었다고 씨부렁 거리는 것 같다.

딸기는 영어가 약해서 대충 감으로 해석하기에 적절한 해석은 기대하지 마시길...

여튼 그 함수들을 살펴보면

public int getCount()
public Object getItem(int position)
public long getItemId(int position)
public View getView(int position, View convertView, ViewGroup parent)

이다

첫번째에서 세번째 함수는 프로그램 짜본 사람이면 쉽게 짐작 할 수 있는 함수들이니 굳이 설명을 하지 않겠다.

마지막 getView 함수는 아마도 갤러리를 실행 했을 때 보이는 각 각의 뷰를 어떻게 나타낼지 설정하는 것 같다.

android.widget.ImageView 변수를 만들어 적당히 개발자의 목적에 맞게 만들어 주자.

나 같은 경우 R.drawable에서 이미지를 불러와 보여주는 간단한 바인딩을 해 주었다.

자 그럼 이렇게 바인딩한 녀석을 갤러리에 넣어보자.

gallery.setAdapter(new Image_binder(this));

이런 식으로 바인딩한 녀석을 갤러리와 연결^^
(Gallery 변수 gallery다. 혹시 변수명과 클래스 명을 헷갈리지 않을까 걱정된다.)

자 그럼 슥슥 안드로이드 에뮬레이터를 실행시키면 갤러리가 뜨고 사용자가 작업한 바인딩이 뜰것이다.

만약 이 갤러리에서 선택한 녀석을 가지고 무엇인가 하고 싶다면

public class Maso_02 extends Activity implements AdapterView.OnItemSelectedListener

클래스 명 뒤에 implements를 구현하자

그리고 다음의 두개의 함수를 만들자

public void onItemSelected(AdapterView parent, View v, int position, long id)
public void onNothingSelected(AdapterView parent)

위 함수는 어떤 선택이 되었을때 실행하는 함수다.

개발자는 적당히 코드를 넣어 원하는 결과를 노려보자

두번째 함수는 구현하지 않아도 잘 돌아간다 ( --)>

그리고 gallery.setOnItemSelectedListener(this)

라고 설정해 주면 끝.

딸기도 아직 공부중이기에 이 글은 언제든 수정/추가 될 가능성이 있다.

좀더 상세한 코드를 통한 공부를 하고 싶은 사람은

구글 안드로이드 문서

http://code.google.com/android/samples/ApiDemos/src/com/google/android/samples/view/Gallery1.html 

참고하기 바란다

'딸기 공부방 > 안드로이드' 카테고리의 다른 글

스크린 터치 이벤트  (0) 2008/05/03
바인딩  (0) 2008/05/03
안드로이드 어플리케이션 삭제  (2) 2008/04/07
안드로이드 교육용 문서  (0) 2008/04/01
안드로이드 API 정리  (0) 2008/03/04
사소한 질문  (0) 2008/03/03
TRACKBACK 0 AND COMMENT 0

ARTICLE CATEGORY

딸기 이야기 (227)
딸기의 혼잣말 (53)
딸기 호감 사이트 (2)
딸기의 사진 (15)
딸기 리뷰 (14)
딸기 공부방 (104)
딸기 자료실 (38)

CALENDAR

«   2008/05   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

ARCHIVE