2012-02-03 11 views
1

私のアプリにはタブがあり、その中にはシステムギャラリーを呼び出すボタンがあります。私はギャラリーとフォルダにアクセスできますが、画像をクリックして表示すると、ギャラリーが消えて私のアプリに戻ります。ギャラリー内の画像は表示されていません

Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 
    photoPickerIntent.setType("image/*"); 
    startActivityForResult(photoPickerIntent, 1); 

は私が行く程度の画像を表示する方法を知っている可能性があります:

は、これは私のコードですか?あらかじめありがとう!

これは、ボタンを使用してギャラリーを起動するときに取得するもので、イメージはそこにありますが、私の電話で画像を起動して見ることができません。

gallery enter image description here

+0

何が起こっているのか詳しく説明してください。画像が表示されない、SDカードに画像がありますか?これを引き起こしている何も奇妙なものでないことを確認するために、あなたはそれを踏襲します – JoxTraex

+0

ギャラリーとアルバムに画像があります。私はそれを表示するには、画像をクリックすると、私のアプリに戻って私を返します。 – Winona

答えて

1

あなたはactivityResultに、方法をonActvityResult実施しているあなたは、データのImagePathが含まれ、意図からデータをフェッチする必要があり、このデータから画像を表示する必要があります。

+0

申し訳ありませんが、どうやってそれをやりますか?以前はonActivityResultを試しましたが、まだ動作しません。私のタブには2つのボタンがあるからです。どうすればonActivityResultを実装するのですか? – Winona

+0

onActivityResult(xx)のようなものを使用する前に、実際にドキュメントを読むべきです。 – JoxTraex

+0

あなたはonActivityResultメソッドを実装していない限り、あなたがonActivityResultメソッドからアクティビティを開始したとしても、あなたはアクティビティから何らかの結果を得ることはありません。 – jeet

0

onActivityResultに実装する方法を学ぶために、このドキュメントを読んで(XX)

http://developer.android.com/reference/android/app/Activity.html

+0

しかし私は問題がonActivityResultにあるとは思わない。私はギャラリーに行って、フォルダやアルバムを見ることができますが、イメージを起動したいときは、ギャラリーが止まって私のアプリに戻ってきます。元の投稿にテストしたときに得たイメージを追加しました – Winona

+0

あなたは実装していないと言っていますが、**実装する必要があります。 – JoxTraex

+0

しかし、onActivityResultを実装せずに、システムギャラリーを起動することができます。何が起こっているのですか? – Winona

0

あなたの問題は意図がメソッドをonActivityResult必要があるということです。少し遅れますが、答えが必要な場合はこれを行うことができます

final static int REQUEST_IMAGE_CAPTURED = 1; 
private Uri uriImage; 

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.main); 

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

     startActivityForResult(intent, 1); 
} 

@Override 
    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     if (resultCode == RESULT_OK) { 
      if (requestCode == REQUEST_IMAGE_CAPTURED) { 
       uriImage = data.getData(); 
       Toast.makeText(MyClass.this, uriImage.getPath(), Toast.LENGTH_LONG).show(); 

       // Your code 
      } 
     } else if (resultCode == RESULT_CANCELED) { 
      uriImage = null; 
      finish(); 
     } 
    } 

おはよう!