ListView를 보시면 화면을 터치한 후 드래그하는 속도에 따라 ListView의 스크롤링 속도가 변하는 것을 볼 수 있습니다. 천천히 하면 스크롤도 천천히 되고 빠르게 드래그하면 바퀴 돌 듯이 ListView가 스크롤 되지요. 이런 효과는 어떻게 구현될 수 있을까요? 안드로이드에서 제공하는 클래스를 통해 쉽게 구현할 수 있습니다. 다음의 코드를 보시죠. public class MyOnTouchListener implements OnTouchListener { private VelocityTracker mVelocityTracker; public boolean onTouch(View v, MotionEvent event) { if (mVelocityTracker == null) { mVelocityTr..
안드로이드 앱을 만들 때 가장 많이 하는 일 중에 하나가 사진을 찍어서 올리거나 인터넷에 있는 사진을 받아다 사용자에게 보여주는 일입니다. 스마트폰이 가진 중요한 기능 중의 하나가 카메라가 내장되어 있다는 것이고 이것이 인터넷과 연결되어 다른 사용자들에게 쉽게 공유할 수 있다는 것이기 때문이죠. 그래서 모바일 앱의 주요 컨텐츠 생산이나 소비 형태도 사진으로 많이 이루어져 있습니다.안드로이드 개발자 공식 사이트에서도 상당히 앞쪽 부분에 사진을 다루는 비트맵에 대한 트레이닝 세션을 만들어 놓았습니다. 공부차 공식 사이트의 내용을 간단히 추려서 옮겨 봅니다. 원문과 샘플코드 다운로드는 Displaying Bitmaps Efficiently에서 보실 수 있습니다. 출처: 안드로이드 개발 사이트(http://de..
[Intro] Android에서 사용하는 이미지는 Bitmap이라는 클래스에서 다~ 알아서 해줍니다. 그리고 이런 Bitmap Object를 쉽게 만들 수 있도록 도와주는 BitmapFactory 클래스 라는 것도 있습니다. BitmapFactory는 여러가지 소스로 부터 Bitmap Object를 만들어 주는 일을 하는데, 전부 static이며 decodeXXX 라는 이름을 가진 메소드들로 이루어져 있습니다.XXX에는 어떤 것으로 부터 decode를 하여 Bitmap Object를 만들어 낼지에 대한 말들이 들어 가겠죠. [Decoding Methods] BitmapFactory.decodeByteArray() 메소드는 Camera.PictureCallback 으로 부터 받은 Jpeg 사진 데이터를 가..
안드로이드 앱을 만들때 배경이미지를 넣어야 하는 경우 OutOfMemoryError에 직면하는 경우가 많다.. 특히 사이즈가 큰 배경이미지 일수록... 자주 발생한다... 즉, OutOfMemoryError는 이름처럼 이미지를 로딩할때 메모리가 부족해서 발생하는것이다... 이럴경우 그원인이 되는 이미지 사이즈 자체를 줄이거나 로딩할때 아래와 같이 사이즈를 줄여서 불러오면 일단 해결은 된다. BitmapFactory.Options options = new BitmapFactory.Options();options.inSampleSize = 2; Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.opening, options); 하..