2012-08-16 3 views
2

내 프로젝트에서 사용자가 갤러리에서 사진을 선택하거나 카메라에서 새 사진을 가져 오도록하고 싶습니다. 사용자가 선택할 수있는 자체 메뉴를 만들어야합니까, 아니면 이미 SDK에 내장되어있는 메뉴가 있습니까?Android SDK : 사용자가 갤러리 또는 카메라에서 사진을 선택할 수있게 하시겠습니까?

+1

나는 이것을 위해 자신 만의 메뉴를 작성해야한다. –

+0

당신이 말하는 것은 당신이 확실하지 않다는 것입니다. 하아. 고마워, 모든 응용 프로그램에서 동일하게 보일 수 있도록 내장되어 있기를 바랬다. – taormania

답변

2

다음 코드를 사용하여 갤러리와 카메라의 선택기를 함께 배치하십시오. 이것이 startActivityForResult와 함께 작동하는지 정말 모르겠다. 시도해보기

Intent galleryintent = new Intent(Intent.ACTION_GET_CONTENT, null); 
    galleryintent.setType("image/*");   

    Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 

    Intent chooser = new Intent(Intent.ACTION_CHOOSER); 
    chooser.putExtra(Intent.EXTRA_INTENT, galleryintent);  
    chooser.putExtra(Intent.EXTRA_TITLE, "title"); 

    Intent[] intentArray = {cameraIntent}; 
    chooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, intentArray); 
    startActivity(chooser); 
+0

나는 startActivityForResult()로 이것을 사용 해보았으나, 어떤 이유로 든 갤러에서 그림을 선택할 때만 결과를 얻는다. 카메라로 사진을 찍을 경우 결과 의도는 항상 null입니다. – Babar

+0

카메라에서 얻은 결과와 갤러리에서 얻은 결과의 차이점은 무엇이라고 생각하십니까? – kabuto178

+1

'EXTRA_INITIAL_INTENTS'와 일치하는 응용 프로그램이 여러 개있을 때, 'EXTRA_INTENT'와 일치하는 응용 프로그램과 동일한 선택기에 병합되지 않습니다. 대신 다른 선택기가 열리는 시스템 항목이 선택기에 나타납니다. UX 관점에서 볼 때 최상의 디자인은 아닙니다. –

관련 문제