• 파일시티 이벤트
  • LF몰 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

[Android/안드로이드] Simple Gallery. ( 겔러리 앱 )

*창*
개인인증판매자스토어
최초 등록일
2012.04.09
최종 저작일
2012.04
파일확장자 압축파일
가격 7,000원 할인쿠폰받기
다운로드
장바구니

소개글

안드로이드 Simple Fast Gallery( 간단하고 빠른 겔러리 앱 ) 입니다.
먼저 스크린샷을 기준으로 설명하겠습니다.
기본 layout은 상단은 preview 이미지, 하단은 list 입니다.

좌측은 Folder view 로 SD card 에 있는 모든 이미지 폴더들을 표시합니다.
폴더의 context 를 고려하여 노란색으로 세팅하였습니다. 물론 색깔은 쉽게 바꿀 수 있습니다.
Folder 를 클릭하여 들어가면 오른쪽 화면처럼 File view 가 나옵니다.
FileView 에서 해당 file 을 클릭하면 preview 가 상단에 표시됩니다.

간단해 보이지만, 세심한 배려가 많이 들어간 앱입니다.
먼저 최초 folder data 를 준비하는 동안 Progress dialog 가 나와서 유저가 현재 data 가 준비중이라는 것을 알 수 있습니다. ( 제 SD card 사진 1000장 넘지만 1초도 안 걸립니다. )
최대한 빠른 속도를 위해서, Folder view 와 File view 를 한 Activity 에서 다룹니다.
따라서 전환에 delay 가 없이 매우 빠릅니다.

이미지의 decode 부분이 핵심인데요.
이미지의 decode 하는 도중에 UI 를 block 하지 않기 위해서 ( 버벅댐을 방지하기 위해서 ) decode 를
다른 thread 로 돌립니다.
용량이 큰 이미지의 경우 OutOfMemory Error 가 발생하는데, 이를 방지하는 코드도 들어가 있고,
이미지 사이즈가 매우 큰 경우 화면 표시를 할 수 없는데, 이를 대처하는 코드도 들어가 있어, 파일 하나가 100M 이상 되는 극악의 경우들을 제외하고는 모두 decoding 됩니다.

이름이 Simple Gallery 인만큼, 사용성과 속도에 초점을 두었습니다.
안드로이드 기본 갤러리보다 디코딩 속도가 더 빠릅니다.

코드는 리펙토링 되어 있어서 쉽게 읽을 수 있으며, 헷갈릴 수 있는 부분은 모두 주석을 달아 놓았습니다.
해당 앱은 Ginger Bread(진저브레드) SDK 로 작성했지만, ICS, Froyo 모두 테스트를 완료하였습니다.

안드로이드 어플리케이션 개발 과목에서, 속도와 기술면에서 인정받아 9.8/10 획득하였습니다.

이클립스에서 프로그램을 로드하신 후에는 F5를 통해 프로젝트를 refresh 해주시고,
[Project] - [Clean] 을 통해 rebuild 작업을 거쳐주셔야 R 관련된 에러가 사라져 정상적으로 이용하실 수 있습니다.

컴파일 실행환경

Android SDK / JDK

압축파일 내 파일목록

SimpleFastGallery/
SimpleFastGallery/.classpath
SimpleFastGallery/.project
SimpleFastGallery/.settings/
SimpleFastGallery/.settings/org.eclipse.jdt.core.prefs
SimpleFastGallery/AndroidManifest.xml
SimpleFastGallery/assets/
SimpleFastGallery/bin/
SimpleFastGallery/bin/classes/
SimpleFastGallery/bin/classes.dex
SimpleFastGallery/bin/classes/com/
SimpleFastGallery/bin/classes/com/sklee/
SimpleFastGallery/bin/classes/com/sklee/simplegallery/
SimpleFastGallery/bin/classes/com/sklee/simplegallery/R$attr.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/R$drawable.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/R$id.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/R$layout.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/R$string.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/R.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/SimpleFastGalleryActivity$1.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/SimpleFastGalleryActivity$2.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/SimpleFastGalleryActivity$PREVIEW_MODE.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/SimpleFastGalleryActivity.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/utils/
SimpleFastGallery/bin/classes/com/sklee/simplegallery/utils/BitmapDecoder$OnImageDecodeFinishListener.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/utils/BitmapDecoder$RequestChangedException.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/utils/BitmapDecoder.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/utils/ProgressDialogUtil$1.class
SimpleFastGallery/bin/classes/com/sklee/simplegallery/utils/ProgressDialogUtil.class
SimpleFastGallery/bin/res/
SimpleFastGallery/bin/resources.ap_
SimpleFastGallery/bin/res/drawable-hdpi/
SimpleFastGallery/bin/res/drawable-ldpi/
SimpleFastGallery/bin/res/drawable-mdpi/
SimpleFastGallery/bin/SimpleFastGallery.apk
SimpleFastGallery/gen/
SimpleFastGallery/gen/com/
SimpleFastGallery/gen/com/sklee/
SimpleFastGallery/gen/com/sklee/simplegallery/
SimpleFastGallery/gen/com/sklee/simplegallery/R.java
SimpleFastGallery/proguard.cfg
SimpleFastGallery/project.properties
SimpleFastGallery/res/
SimpleFastGallery/res/drawable-hdpi/
SimpleFastGallery/res/drawable-hdpi/gallery_icon.jpg
SimpleFastGallery/res/drawable-ldpi/
SimpleFastGallery/res/drawable-ldpi/gallery_icon.jpg
SimpleFastGallery/res/drawable-mdpi/
SimpleFastGallery/res/drawable-mdpi/gallery_icon.jpg
SimpleFastGallery/res/layout/
SimpleFastGallery/res/layout/file_list_item.xml
SimpleFastGallery/res/layout/folder_list_item.xml
SimpleFastGallery/res/layout/main.xml
SimpleFastGallery/res/layout/main2.xml
SimpleFastGallery/res/values/
SimpleFastGallery/res/values/strings.xml
SimpleFastGallery/src/
SimpleFastGallery/src/com/
SimpleFastGallery/src/com/sklee/
SimpleFastGallery/src/com/sklee/simplegallery/
SimpleFastGallery/src/com/sklee/simplegallery/SimpleFastGalleryActivity.java
SimpleFastGallery/src/com/sklee/simplegallery/utils/
SimpleFastGallery/src/com/sklee/simplegallery/utils/BitmapDecoder.java
SimpleFastGallery/src/com/sklee/simplegallery/utils/ProgressDialogUtil.java

참고 자료

없음
*창*
판매자 유형Bronze개인인증

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
탑툰 이벤트
[Android/안드로이드] Simple Gallery. ( 겔러리 앱 )
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
AI 챗봇
2024년 06월 03일 월요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
3:38 오후
New

24시간 응대가능한
AI 챗봇이 런칭되었습니다. 닫기