목록전체 글 (1327)
오늘도 공부
출처 : http://luxtella.tistory.com 결론은 두가지 방법이 있다. 1. View의 canvas가 그림을 framebuffer가 아닌 bitmap에 그리게 하기 2. View.getDrawingBuffer() 이용하기 우선 성능 측면에서는 1번이 약간 앞선다. 두가지 방법의 메카니즘을 설명해보자 1. View의 canvas가 그림을 framebuffer가 아닌 bitmap에 그리게 하기 우선 사용법은 View를 상속받아 onDraw를 overriding하면 그림을 screen(framebuffer겠죠?)에 그리지 않고 bitmap에 그릴수 있다 public void onDraw(Canvas canvas){ canvas.setBitmap(bitmap); bitmap.eraseColor(..
출처 : http://luxtella.tistory.com/entry/Android-ViewgetDrawingCache-%EB%B6%84%EC%84%9D getDrawingCache가 어떻게 그림을 복사하는지 내부 mechanism을 살펴보자 우선 사용예제는 webView.setDrawingCacheEnabled(true); webView.setDrawingCacheBackgroundColor(Color.WHITE); webView.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_AUTO); webView.getDrawingCache(true) 결론은 c단에서 skia bitmap이 실제로 그려지는 device의 actual pixel memory에 바로 붙어서 ..
출처:안드로이드에서 DataBase를 다뤄보자! (1) SQLite 1 -> SQLite는 다른 프로그램에 임베팅하기 좋으면서도 깔끔한 SQL 인터페이스를 제공 -> 메모리도 적게 사용하면서 속도도 빠르다. -> 실행파일과 소스 코드가 무료이고 공개되어 있기 때문에 많이 사용된다. -> 안드로이드는 SQLite를 내장하고 있으며, 모든 안드로이드 애플리케이션은 간단하게 SQLite 데이터베이스를 생성해 활용할수 있다. -> SQLite는 표준 SQL 인터페이스를 사용한다. -> SQLite가 JDBC를 기본 API로 제공하지 않고, 휴대폰과 같은 환경에서 JDBC와 같은 규모 있는 프레임웍은 여러모로 무리가 된다. -> 액티비티는 일반적으로 컨텐트 프로바이더나 서비스 등을 통해 데이터베이스에 접근한다. ..
출처 : http://blog.naver.com/oh4zzang 안드로이드 테이블 존재여부 확인하기 - Sqlite mater table query 안드로이드 sqlite에서 다음과 같이, master table 에 접근해 해당 table 존재 여부를 알 수 있다. 다음은 SQLiteDatabase를 이용한 간단한 로그 찍어 테이블 이름을 확인하는 쿼리다~~ Cursor c = db.rawQuery("SELECT name FROM sqlite_master WHERE type='table'", null); if(c.moveToFirst()) { for(;;) { Log.e(TAG, "table name : " + c.getString(0)); if(!c.moveToNext()) break; } } 특정 테..
출처 : http://www.androidpub.com/591578 질문 올리는 김에 오늘 찾아낸 팁 하나 올려봅니다. 데이터베이스에 있는 내용을 쿼리해서 리스트에 바인딩 할 때 SimpleCursorAdapter 를 사용하시는 건 다들 아시죠? 하지만 요 어댑터의 맹점은 모든 필드를 하나의 아이템 위젯에 밖에 연결할 수 없다는 것입니다. cs = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2, cursor, new String[] { "capital", "country" }, new int[] { android.R.id.text1, android.R.id.text2 }); 이 코드는 쿼리해 받아온 cursor 에서 capital, ..
그냥 Base64 자바파일을 src에 패키지 이름 추가하고 사용하면 된다..18181818..ㅋㅋ The official documentation states that base64 encode and decode in Android is in the Android.util package. But when you go to use it you will find it's not there! After much searching, I confirmation Android left base64 encode and decode out of the Android.util package. So what to do? Don't worry, Robert W. Harder has but together a very fas..
출처 : 안드로이드 펍(http://www.androidpub.com/837593) 안녕하세요. 개발자 질문란에 답변을 달았더니.. 쪽지를 주셔서 조금 더 자세히 말씀드리기 위해서 개발자 정보 공간에 글을 써봅니다. 기본적으로 카메라를 찍는 Activity를 직접 만들기 위해서는.. SurfaceView등을 이용하여 구현하여야 하지만, 이 글의 목적은 어떻게해서든 사진을 찍은 '후'에, 그 정보를 받아와 ImageView에 뿌리거나, Bitmap으로 받는 것이므로 그쪽에 초점을 두겠습니다. 버전은 2.1을 기준으로 합니다. 우선 Intent를 이용하여 내장 카메라를 불러옵니다. 저는 사진 찍기 버튼 클릭시 동작하게 해놓았으므로 OnClickListener에 구현되어있습니다. view source prin..
출처: 안드로이드펍 안드로이드 개발 참고 사이트 모음입니다. - AndroidPub : 안드로이드펍 한국 안드로이드 사용자 및 개발자 커뮤니티. 소개 : 한국 안드로이드 커뮤니티 홈페이지 : http://www.androidpub.com - 공식 안드로이드 공식 홈페이지들 소개글 : 안드로이드의 전체 소스를 다운받을 수 있음 홈페이지 : 소스 http://source.android.com 공식 http://www.android.com 마켓 http://market.android.com 개발자 http://developer.android.com - 안드로이드 써드파티 마켓 사이트 모음 소개글 : 안드로이드의 다양한 써드파티 마켓 정보 모음 홈페이지 : http://www.androidpub.com/2252..
ListDataEvent.CONTENTS_CHANGED /*Type: Interval Added , Index0: 0 , Index1: 0 [First, a, b, c, d] Type: Interval Added , Index0: 5 , Index1: 5 [First, a, b, c, d, Last] Type: Interval Added , Index0: 3 , Index1: 3 [First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 0 , Index1: 0 [New First, a, b, Middle, c, d, Last] Type: Contents Changed , Index0: 6 , Index1: 6 [New First, a, b, ..
사용법 : File file = new FileRenamePolicy().rename(new File(원하는 파일명)); ============================================================================== import java.io.File; import java.io.IOException; public class FileRenamePolicy { public File rename(File f) { //File f는 원본 파일 if (createNewFile(f)) return f; //생성된 f가 //확장자가 없는 파일 일때 처리 String name = f.getName(); String body = null; String ext = null;..