2013-01-12 1 views
0

이러한 코드가 있습니다. 카메라가 열리고 사진이 찍히지 만 "확인"버튼을 클릭해도 아무런 변화가 없습니다. 이전 활동으로 돌아갈 수있는 유일한 방법은 나에게 유용하지 않은 "x"버튼을 클릭하는 것입니다. 문제가 무엇입니까? (onActivityResult를 방법은 아직 완료되지 않습니다.) (내가 Android.provider.MediaStore.ACTION_IMAGE_CAPTURE 목적으로이 알고리즘을 사용하는 데 사용. OK 모든 것이 있었다. 나는 내가 지금 문제가 왜 아무 생각이 없습니다.)ActivityForResult를 사용하여 이전 활동을 리턴 할 수 없습니다.

public void onClick(View v) { 

      Intent getCameraImage = new Intent("android.media.action.IMAGE_CAPTURE"); 
      db.open(); 
      Cursor cr = db.getAllRecords(); 
      int count = cr.getCount(); 

      db.close(); 

      File cameraFolder; 

      if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)) 
       cameraFolder = new File(android.os.Environment.getExternalStorageDirectory(),"TSFC"); 
      else 
       cameraFolder= ShowMessagesPage.this.getCacheDir(); 
      if(!cameraFolder.exists()) 
       cameraFolder.mkdirs(); 

      File photo = new File(Environment.getExternalStorageDirectory(), "TSFC/" + (count + 1) + ".jpg"); 
      getCameraImage.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo)); 

      initialURI = Uri.fromFile(photo); 

      startActivityForResult(getCameraImage, CAMERA_RESULT); 
     }});} 

protected void onActivityResult(int requestCode, int resultCode, 
      Intent intent) { 
     super.onActivityResult(requestCode, resultCode, intent); 

     if (resultCode == RESULT_OK) { 
      Bundle extras = intent.getExtras(); 
      photo = (Uri) extras.get("data"); 


     } 
     } 
+0

좋아,이 코드 줄,'getCameraImage.putExtra (MediaStore.EXTRA_OUTPUT, Uri.fromFile (photo));을 제거하고 내가 무슨 일이 일어 났는지 알려주지 않으면 문제를 알 수있을 것 같아. – user370305

+0

자세한 내용을 보려면이 링크를 사용하십시오. http://mobile.tutsplus.com/tutorials/android/capture-and-crop-an-im-with-the-device-camera/ –

+0

치명적 오류 : 결과 전달 실패 ResultInfo –

답변

0

사용 onActivityResult(..)이 방법으로 결과를 되 찾는 방법.

그냥이 코드 줄을 추가

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 

    if (requestCode == CAMERA_RESULT) { 
     // Make sure the request was successful 

      if (resultCode == RESULT_OK) { 
      Bundle extras = intent.getExtras(); 
      photo = (Uri) extras.get("data"); 

     } 
    } 
} 
+0

변경 사항이 없습니다. "ok"버튼을 클릭했을 때 아직 돌아 가지 않습니다. –

1

좋아, 그것의 잘 알려진 버그, photo.createNewFile();

뭔가 같은

또한
File photo = new File(Environment.getExternalStorageDirectory(), "TSFC/" + (count + 1) + ".jpg"); 
photo.createNewFile(); 
getCameraImage.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo)); 

가 잊지 마세요,

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

그리고 l 나 너의 진보를 안다.

+1

나는 당신을 위해 링크를 가지고있다. http://stackoverflow.com/questions/1910608/android-action-image-capture-intent – user370305

+0

안돼 ... 아직도 작동하지 않는다 ... 내가 게시 한 링크를 살펴볼 것이다. . 감사합니다 =) –

관련 문제