목록Android/Tip&Tech (399)
오늘도 공부
출처 : http://stackoverflow.com/questions/3693234/custom-imageview-with-drop-shadow Custom ImageView with drop shadow up vote3down votefavorite 6 Okay, I've been reading and searching around, and am now banging my head against the wall trying to figure this out. Here's what I have so far: package com.pockdroid.sandbox; import android.content.Context; import android.graphics.Canvas; import android...
http://stackoverflow.com/questions/3748568/how-can-i-launch-androids-email-activity-with-an-attachment-attached-in-the-emai http://stackoverflow.com/questions/2264622/android-multiple-email-attachment-using-intent-question http://blog.blackmoonit.com/2010/02/filebrowser-send-receive-intents.html public static void email(Context context, String emailTo, String emailCC, String subject, String emai..
출처 : http://sdw8001.tistory.com/5 리소스에서 bitmap을 읽어오고 화면에 출력한 후 touch를 이용해서 drag하는 예제 package com.jjihun.bitmaptest; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Rect; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; import android.view.View;..
C2DM과 Notification 사용시 막히는 부분이 있어서 이렇게 질문 드립니다. 01.public class C2dm_BroadcastReceiver extends BroadcastReceiver { // -------- 1번 02. 03.NotificationManager mNotiManager; 04.public static String registration_id = null; 05.static String c2dm_name = ""; 06.static String c2dm_msg = ""; 07. 08. 09.public void onReceive(Context context, Intent intent) { 10. 11.mNotiManager = (NotificationManager)getS..
출처 : http://www.ibm.com/developerworks/opensource/library/x-android/index.html Working with XML on Android Build Java applications for mobile devices Michael Galpin, Software architect, eBay Michael Galpin is an architect at eBay. He is a frequent contributor to developerWorks and has also written for TheServerSide.com and the Java Developer's Journal, as well as his own blog. He has been progra..
출처 : http://www.cyworld.com/prizm0911/3284619 아래 xml파일을 res/values 에 생성. 1.-------------------------------------------------------------------------------------------- color.xml #959ca4 #646d79 #959ca4 #646d79 #686e77 #40474f #00000000 2.-------------------------------------------------------------------------------------------- 아래 xml파일을 res 에 해당 drawable 에 생성. 여기서는 위 1 번에서 설정된 색을 가져와서 셋팅하게됩니다...
SimpleCursorAdapter와 spinner 연결시 getSelectedItem() android by 왕새우 2010/11/26 18:00 daeha.egloos.com/1139323 덧글수 : 0 출처 : http://daeha.egloos.com/1139323 ★ 현상 SimpleCursorAdapter와 spinner 연결해서 사용할 경우 Spinner.getSelectedItem()을 하면 Cursor가 넘어온다. 정확하게 말하면 SQLiteCursor... Cursor에 들어있는 값을 가져오고 싶은데 어떻게 해야하나요? ★ 해결 ((SQLiteCursor)spinner.getSelectedItem()).getString(1) 존나 촌스럽고 더티하다 -_-;; 하지만 일단되니 뭐... 좀..
안드로이드 차트Chart (Graph)관련(/www.androidpub.com) 안드로이드 2010/05/01 14:51 http://blog.naver.com/chullin/130085283285 상용 aiCharts http://www.artfulbits.com/Android/aiCharts.aspx 상용 차트입니다. 갤러리 - http://www.artfulbits.com/Android/gallery/galleryCharts.aspx 우크라이나 회사 같습니다. 미국에서도 영업합니다. 온라인 결재 299달러 시작 오픈소스 achartengine http://code.google.com/p/achartengine/ 현재도 계속 개발중입니다. 종류 line chart area chart scatter c..
@Override public void update(Observable observable, Object data) { // database changed runOnUiThread(new Runnable() { @Override public void run() { stopManagingCursor(cursor); dbAdapter.close(); dbAdapter.open(); cursor = getAccounts(); startManagingCursor(cursor); adapter.changeCursor(cursor); } }); }
Android Custom CursorAdapter 사용법 데이터베이스에 있는 내용을 쿼리해서 리스트에 바인딩 할 때 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, country 필드 두개를 리스트 아이템2 기본 템플릿에 바인..
출처 : http://www.yougli.net/android/a-photoshop-like-color-picker-for-your-android-application/ A Photoshop like color picker for your Android application Introduction Depending on your application, you might one day need a good color picker. With Shake Them All! I needed a color picker to select the color of the default skin and default background. I first had a look at the Android API to see if..
출처 : http://www.androidside.com/bbs/board.php?bo_table=B46&wr_id=1672 안드로이드에서는 트리거를 직접 작성해야 합니다. 트리거 궁금하신 분은 아래 내용 읽어보세요~ 참고 http://blog.daum.net/_blog/BlogView.do?blogid=0Idq4&articleno=8429305#ajax_history_home /* 테스트 테이블 생성 */ CREATE TABLE address (uid INTEGER PRIMARY KEY, name TEXT, gender INTEGER); CREATE TABLE metadata (uid INTEGER PRIMARY KEY, man_count INTEGER, woman_count INTEGER); /* a..
출처 : http://tigerwoods.tistory.com/17 파트 1에 이어 파트 2에서는 사용자와 interact가 가능한 ListView의 구현과 이를 재사용 가능 하도록 하는 방법에 대해 다룹니다. 재사용 가능한 커스텀 ListView에 관한 부분은 지금까지 다룬 모든 ListView관련 노하우 + @ 가 사용 됨으로 전 포스팅의 내용을 모두 숙지 하고 계셔야 이해가 쉬울 것 같습니다. 4. Interactive ListView 만들기 지금까지는 Static한 ListView만 살펴봤지만, 사용자와 교감(interact)이 가능한 ListView를 만들 수도 있다. 예를 들면, mp3플레이어 플레이 리스트에 별표의 개수를 저장할 수 있도록 하여 특정 곡에 대한 선호도를 지정할 수 있을 것이다..
출처 : http://tigerwoods.tistory.com/14 이번에는 마지막에 살펴봤던 ListView를 더 쓸모 있게 만드는 방법을 소개합니다. 내용이 좀 길어져서 2파트로 나누었습니다. 파트 1은 ListView 위젯을 더 복잡하게 꾸미고 성능을 향상 시키는 방법을 소개하고, 파트 2는 사용자와 Interact가 가능한 ListView를 먼저 살펴보고 이를 재활용 하는 방법에 대해 다룹니다. 1. XML을 이용해 꾸미기 스마트폰의 제한적인 스크린 사이즈 때문에 List위젯들(ListView, spinner등)의 중요성은 아주 크다. list 위젯의 생김새를 결정하는 것은 전적으로 어떤 구성의 Adapter를 해당 list위젯에 연결하느냐에 달려있다. 다음 예는 전 장에서 사용한 썰렁한 text..
Preparing to Publish: A Checklist출시 준비를 위한 체크 리스트 (읽어보니 이부분은 앞부분의 서명을 하는 방법에 대한글을 읽기전에 봐야 하는 글이다. 말그대로 서명하기전에 이건 확인해야 한다! 하는 체크리스트 쯤..실제 출시를 위해 어떤 순서를 밟아야 하는지 잘 나와 있다.) 어플리케이션을 출시한다는 것은 그것을 시험하고, 적합하게 패키징하고 안드로이드 구동 모바일 디바이스 사용자들에게 이용가능하게 만드는 것을 의미한다. 만약 당신이 안드로이드 구동 디바이스에 설치를 위한 당신의 어플리케이션을 출시할 계획이라면, 해야하는 일이 몇가지 있다. 이 글은 성공적인 배포를 위한 어플리케이션 준비로 중요한 확인점들을 강조한다. 당신이 어플리케이션 배포를 위한 준비를 하기 전에: 실제 디바..
출처 : http://blog.naver.com/wind5395?Redirect=Log&logNo=150096686510 mapview위에 mark를 표시하는 방법은 Overlay를 이용한 것이다. 그런데, 안드로이드 상에서 MyLocationOverlay라는 특수한 overlay를 제공해준다. 이름에서 알 수 있듯이 현재 target의 위치를 mapview위에 띄워주는 overlay이다. 자신의 위치를 나타내고, 위치가 갱신이 되면 이동한 경로를 mapview에 그리고, 이동 거리를 계산하는 코드는 다음과 같다. class MyOverlay extends MyLocationOverlay { Location mMyBeforeLocation; Location mMyCurrentLocation; Path m..
출처 : http://stbaeya.com/tc/225?category=45 안드로이드 구글맵 거리계산, 좌표계산 Location API를 통한 좌표로 거리 계산하기. double distance; Location locationA = new Location("point A"); locationA.setLatitude(latA); locationA.setLongitude(lngA); Location locationB = new Location("point B"); locationB.setLatitude(latB); LocationB.setLongitude(lngB); distance = locationA.distanceTo(locationB); 그리고 distanceBetween() 사용하기. float..
원문보기 : GoogleMap Open API #1 - 구글맵 시작하기. GoogleMap Open API #3 - class GMap2 활용하기. ------------------------------------------------------------------------------------------- 구글맵에 위치를 표시하기 위해서 사용하는 것이 마커입니다. 기본적으로 좌표만 있으면, 마커를 만드실 수 있습니다. 그리고 추가적으로 마커의 이미지를 변경할 수 있으며, 말풍선 라벨을 달 수 있습니다. 그럼 간단하게 마커의 생성과 말풍선 다는 동작 등에 대해서 간단히 살펴보도록 하겠습니다. -------------------------------------------------------------..
public OnClickListener arrow_listener = new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub MotionEvent e1 = MotionEvent.obtain( SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, 89.333336f, 265.33334f, 0); MotionEvent e2 = MotionEvent.obtain( SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), MotionEvent.ACTION_UP..
출처 : http://devlog.thoth.kr/?mid=blog&document_srl=6248231 android.widget.Gallery는 드래그하는 속도에 따라서 스크롤되는 길이가 달라진다. Gallery가 제공하는 속성이나 메소드로는 드래그속도에 관계없이 하나의 View만 스크롤되도록 설정할 수 없다. Touch Event Callback 메소드나 ImageSwitcher, 애니메이션 등을 이용하여 비슷한 이펙트를 구현하는 등 방법은 여러 가지가 있겠지만 코드가 복잡해 지고 Gallery가 제공하는 기능을 포기하거나 구현해주어야 한다. 하지만, onFling메소드를 오버라이드하여 드래그속도에 따른 스크롤기능 대신 하나의 View만 스크롤되도록 fling 기능만을 수정할 수 있다. public..
출처 : http://cafe.naver.com/smartyandroid.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=44& 카페가 너무 죽어있는거 같아서 ㅠ.ㅠ 블로그에 비공개로 수집했던 사이트 url 풉니다! 멀티 컬럼 리스트 http://www.heikkitoivonen.net/blog/2009/02/15/multicolumn-listview-in-android/ 코드 참고시 유용한 사이트 http://www.developerit.com/2010/03/31/adding-visible-markers-to-represent-geopoints-to-a-mapview-using-itemizedoverlay-in-android http://www.sdnkorea.com/b..
출처 : http://blog.naver.com/skcjs84?Redirect=Log&logNo=90089483420 // 소스는 밑에 굵게 표시된 부분임.. http://groups.google.com/group/android-developers/browse_thread/thread/6aeed20525760f3/46407ecb1c68502e?hl=en&lnk=gst&q=canvas+to+file#46407ecb1c68502 Hi, I am doing a painting program (KIds Paint - you can find in Android Market) and I have a lot of requests to save ..
출처 : http://utime.blog.me/150090888234 현재 View 클래스에 보여지는 화면을 파일로 저장하는 클래스다. View를 상속 받아 만든 클래스 ImageView, WebView 등 클래스를 이용할 수 있다. import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Picture; import android.graphics.drawable.PictureDra..
intent = new Intent(Intent.ACTION_PICK); intent.setType (android.provider.MediaStore.Images.Media.CONTENT_TYPE);
안 드로이드에는 얼굴 인식 기능이 내장되어 있습니다. FaceDetector Class가 바로 이미지를 분석하여 얼굴을 찾아내는 역할을 하는 클래스입니다. 얼굴 인식 기능은 이미지를 사용하는 다양한 애플리케이션에서 활용 가능 하고 간단히 사용할 수 있으므로 참고하세요. FaceDetector.Face[] faces = new FaceDetector.Face[10]; // 최대 인식할 얼굴수 설정 FaceDetector detector = new FaceDetector(bitmap.getWidth(), bitmap.getHeight(), faces.length); int numFaces = detector.findFaces(bitmap, faces); // 얼굴 인식 실행 for(FaceDetector.F..
출처 : http://theeye.pe.kr/entry/example-of-image-crop-with-camera-and-album-picker-on-android 안드로이드에서 카메라를 이용하여 이미지 촬영후 해당 이미지를 크롭하는 경우의 예제를 만들어 보았습니다. 이 예제에서는 카메라를 이용하는것 외에도 앨범에서 이미지를 가져오는 경우에도 마찬가지로 크롭을 할 수 있도록 하였습니다. 1. AndroidManifest.xml 에 권한 추가하기 2. main.xml 레이아웃 만들기 3. 소스 코드 작성 package pe.kr.theeye.cameracrop; import java.io.File; import android.app.Activity; import android.app.AlertDialog..
Android에서 Bitmap 관련 작업을 할때 항상 사용하는것이 Bitmap 클래스와 BitmapFactory 클래스이다. BitmapFactory 클래스는 decode 메서드를 사용하여 File, Stream 등을 입력받아 Bitmap으로 변환할 수 있다. Bitmap 클래스는 Bitmap의 재가공, Bitmap의 구성을 변경한다던지, 크기를 변경하는 작업을 수행한다. 그런데 현재 Android 상에서 위 2개는 심각한 메모리 누수를 유발하고 있다. 단순 SD 카드에서 파일을 읽어 와 표시해주는 것이라면 관계가 없지만 작업 1. MediaStore를 사용하여 이미지를 가지고 온 후 크기를 변경하고 이를 화면에 표시함과 동시에 서버에 업로드 한다. 위 작업이 한번이 아닌 여러번 수행 되어야 한다면..?..
해상도 별로 레이아웃 설정을 변경하거나 또는 늘이거나 줄이지 않고, 중앙에 표시하고자 할 때는 아래와 같이 합니다. 현재 진행 중인 게임 강좌에 맞춰서 예제를 만들어 봤습니다. 01.package app.main; 02. 03.import ryulib.game.GamePlatform; 04.import android.app.Activity; 05.import android.os.Bundle; 06.import android.util.DisplayMetrics; 07.import android.widget.LinearLayout; 08. 09.public class Main extends Activity { 10. 11.private static final int _Width = 300; 12.privat..
출처 : http://psjin14.tistory.com/99 컴퓨터/Android Android]Convert Drawable to Bitmap2010/07/09 23:05 | Posted by 예섬수진 아래는 Drawable 객체를 Bitmap 객체로 변환하는 방법이다. Drawable d; // 특정 값 대입 Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGV_8888); Canvas canvas = new Canvas(bitmap); d.setBounds(0, 0, width, height); d.draw(canvas); 그럼 이 소스를 이용하여 작성된 코드를 살펴 보자. 소스 코드 => 이 코드에는 ImageView 2개가..
몇개월 전에 짠 내 소스에서 뽑아서 적음..;;;;;;;;; private void saveView( View view ) { String path = Environment.getExternalStorageDirectory().getAbsolutePath(); Bitmap b = Bitmap.createBitmap( view.getWidth(), view.getHeight(), Bitmap.Config.RGB_565); if(b!=null){ try { File f = new File(path+"/notes"); f.mkdir(); File f2 = new File(path + "/notes/"+title+".png"); Canvas c = new Canvas( b ); view.draw( c ); Fi..