지난 주에 이어 이번 주에는 구글 안드로이드 사이트의 튜토리얼 중 하나인 HelloGallery를 만들었다. 구글 사이트에 올라온 코드가 버그가 있어서 그대로 옮기면 에러가 나고, 아래와 같이 'c.'를 붙여주어야 한다.
이렇게 우선 gallery를 만들어 main.xml 의 Gallery 부분을 다음과 같이 화면에 꽉차게 만들어 주면 기본적인 갤러리 기능은 동작하게 된다.
여기에 이미지 버튼을 넣어주면 다음과 같다. (main.xml 및 HelloGallery class) i를 누르면 Toast를 사용해 간단한 정보를 출력하게 하고, x를 누르면 현재 Activity를 종료하게끔 하였다.(현재는 x버튼을 다른 테스트용도로 사용하느라 코드에서는 빠져있다.)
마지막으로 메뉴를 만들어 주면 다음과 같다. (menu.xml 및 HelloGallery class)
앞으로 해보고 싶은 것은 다음과 같다.
오늘 참고한 사이트는 다음과 같다.
http://www.androidside.com/
http://www.anddev.org/post36267.html#p36267
public ImageAdapter(Context c) {
mContext = c;
TypedArray a = c.obtainStyledAttributes(R.styleable.HelloGallery);
mGalleryItemBackground = a.getResourceId(
R.styleable.HelloGallery_android_galleryItemBackground, 0);
a.recycle();
}
이렇게 우선 gallery를 만들어 main.xml 의 Gallery 부분을 다음과 같이 화면에 꽉차게 만들어 주면 기본적인 갤러리 기능은 동작하게 된다.
<Gallery
android:id="@+id/gallery"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
여기에 이미지 버튼을 넣어주면 다음과 같다. (main.xml 및 HelloGallery class) i를 누르면 Toast를 사용해 간단한 정보를 출력하게 하고, x를 누르면 현재 Activity를 종료하게끔 하였다.(현재는 x버튼을 다른 테스트용도로 사용하느라 코드에서는 빠져있다.)
<ImageButton
android:id="@+id/info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_menu_info_details"
android:background="#00000000"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginRight="10px"
android:layout_marginBottom="26px"
/>
ImageButton btnInfo = (ImageButton)findViewById(R.id.info);
Drawable dBtnInfo = btnInfo.getBackground();
dBtnInfo.setAlpha(100);
btnInfo.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Toast.makeText(HelloGallery.this, R.string.about, Toast.LENGTH_LONG).show();
}
});
마지막으로 메뉴를 만들어 주면 다음과 같다. (menu.xml 및 HelloGallery class)
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_info"
android:icon="@drawable/ic_menu_info_details"
android:title="@string/menu_info"/>
<item android:id="@+id/menu_close"
android:icon="@drawable/ic_menu_close"
android:title="@string/menu_close"/>
</menu>
@Override
public boolean onCreateOptionsMenu(Menu menu) {
mMenu = menu;
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, mMenu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()) {
case R.id.menu_info:
Toast.makeText(HelloGallery.this, R.string.about, Toast.LENGTH_LONG).show();
break;
case R.id.menu_close:
finish();
break;
}
return true;
}
앞으로 해보고 싶은 것은 다음과 같다.
- 화면 클릭 시 이미지 확대 및 상하좌우 스크롤
- 특정 웹의 이미지를 갤러리로 가져오기
- 이미지에 별점을 주고 이를 웹사이트와 연동
- 이미지 위에 해당 이미지에 관한 정보를 띄워주는 것
- 등등..
오늘 참고한 사이트는 다음과 같다.
http://www.androidside.com/
http://www.anddev.org/post36267.html#p36267
'Android' 카테고리의 다른 글
| Eclipse에서 발생하는 빈번한 에러 해결하기 (0) | 2010/06/28 |
|---|---|
| 안드로이드 XML 파싱방법 - SAX, XmlPullParser, DOM (1) | 2010/06/27 |
| 안드로이드 갤러리 앱 - 웹에서 이미지 가져오기 (0) | 2010/06/26 |
| 안드로이드 마켓 개발자 등록 (0) | 2010/06/22 |
| 안드로이드 첫번째 앱 - 이미지 갤러리 v0.1 (5) | 2010/06/21 |
| 안드로이드 개발환경 설치 및 AVD에서 마켓 접속하기 (0) | 2010/06/13 |



댓글을 달아 주세요
비밀댓글입니다
전체소스는 구글 안드로이드 사이트의 것을 그대로 사용하시고, 본 포스팅에 있는 내용을 추가 혹은 수정만 하시면 됩니다. 직접 해보시는 것이 더 도움이 되리라 생각합니다.
안드로이드의 갤러리 샘플을 해보니 이미지가 3개씩 나오던데요.. 어떻게 해서 하나씩 나오는 건가요... 이미지 사이즈를 키워주면 되는건가요??
비밀댓글입니다
비밀댓글입니다