2014-05-17 1 views
1

내 질문에 관련된 많은 질문을 알고 있지만 내 문제를 해결할 수있는 답변을 얻을 dint, 기본적으로 내 요구 사항은 gallary에서 이미지를 선택하고 그 이미지를 Image of Image of Image of Tab Activity로 다시 설정하지만 TabActivity에서 onActivityResult() 메서드에 대한 호출을 얻을 수 없습니다. 어제부터 문제를 해결하기 위해 다른 방법을 검색하려고 했으므로 onActivityResult()가 작동하지 않습니다. 번들을 사용하여 이미지를 전달하려고했으나 점점! FAILED BINDER TRANSACTION !!! 오류, 위의 상황을 처리하는 방법, 나에게 TabActivity 자식 작업에 onActivityResult() 메서드를 호출하는 방법을 제안하십시오, 감사 미리.TabActivity의 하위 활동은 onActivityResult() 메소드를 지원합니까?

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

    if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK 
      && data != null) { 

     Uri pickedImage = data.getData(); 
     String[] filePath = { MediaStore.Images.Media.DATA }; 
     Cursor cursor = getContentResolver().query(pickedImage, filePath, 
       null, null, null); 
     cursor.moveToFirst(); 
     String imagePath = cursor.getString(cursor 
       .getColumnIndex(filePath[0])); 

     imgShowLocationImage.setImageBitmap(BitmapFactory 
       .decodeFile(imagePath)); 
     cursor.close(); 
    }} 
+0

참고 :이 코드는 별도의 활동에서 tabactivity 하위의 자식과 동일한 활동을하지 않고 실행하면 효과가 있습니다 – Reena

답변

2

이 갤러리로 이동합니다 선택 버튼이 확인 :

내 코드는 다음

public void openGallary(int req_code) { 

    Intent i = new Intent(Intent.ACTION_PICK, 
      android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 

    startActivityForResult(i, req_code); 

} 

내가 openGallary에서() 메소드를 requestCode가 통과하는 내 onActivityResult를() 메소드입니다 여기서 당신은 이미지를 선택할 수 있습니다.

   Intent i = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);       
      startActivityForResult(i, LOAD_IMAGE_RESULTS); 

그리고 나서 onActivityResult를 이와 같이 호출합니다.

 if (requestCode == LOAD_IMAGE_RESULTS && resultCode == RESULT_OK && data != null) 
     { 

      Uri pickedImage = data.getData(); 
      String[] filePath = { MediaStore.Images.Media.DATA };   
      Cursor cursor = getContentResolver().query(pickedImage, filePath, null, null, null); 
      cursor.moveToFirst(); 
      String imagePath = cursor.getString(cursor.getColumnIndex(filePath[0]));       
      // image.setImageBitmap(BitmapFactory.decodeFile(imagePath));  

      image.setImageBitmap(BitmapFactory.decodeFile(imagePath)); 
      cursor.close(); 
     } 

이렇게 찍은 이미지는 ImageView에 표시됩니다.

+0

답장을 보내지만 여전히 동일한 문제에 직면했습니다 .-(디버깅 후 onActivityResult() 메서드에 도달 할 수 없습니다. – Reena

+0

하지만 onButtonClick yoour 앱이 갤러리로 이동 중입니까? – user3465277

+0

예 내 앱이 갤러리로 이동했지만 갤러리에서 이미지를 선택한 후 onActivityResult() 메소드가 액티비티를 요청할 수 없습니다. 지나가는 요청 코드에 문제가있을 수 있다고 생각했지만 요청 코드에 아무런 문제가 없습니다. 아래 질문에 언급 된 노트를 살펴보십시오. – Reena

관련 문제