2017-04-01 5 views
0

私のアプリケーションの画像ボタンに電話のギャラリーから画像を選択するのに役立つコードを探しましたが、そのほとんどは画像ビューです。画像携帯電話のギャラリーを開いてAndroid上に画像を表示するボタン

誰かが私にこのことをどうやって教えてくれて助けてくれるのだろうかと思っていましたか?

+0

ImageViewのはのImageButtonよりも違いはありませんので、どこで取得しているあなたがしようとしたコードやエラーがありますか? –

+0

私は何をすべきか、どこから正直なところから始めるべきかわからないので、私は試しませんでした。@ cricket_007 – Dckw24

+0

レイアウトを作成しますか?ビューを見つける?クリックリスナーを接続しますか?画像を取得するためにギャラリーを開く方法についてはおそらく答えStackoverflowを見つける...その他 –

答えて

0

あなたのxmlでまずのImageButtonを作成:

<ImageButton 
    android:id="@+id/image_button" 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:scaleType="fitCenter"/> 

次に、あなたの活動に:このボタンとセットを見つけるOnCreateの方法では

ImageButton imageButton; 
    1. をクラス変数を作成します。 OnClickListener:

      imageButton = (ImageButton) findViewById(R.id.image_button); 
      imageButton.setOnClickListener(new View.OnClickListener() { 
          @Override 
          public void onClick(View v) { 
           Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 
           photoPickerIntent.setType("image/*"); 
           startActivityForResult(photoPickerIntent, 500); 
          } 
      }); 
      
    2. オーバーライドonActivityResult:

      @Override 
      public void onActivityResult(int requestCode, int resultCode, Intent data) { 
      super.onActivityResult(requestCode, resultCode, data); 
      
      switch(requestCode) { 
          case 500: 
           if(resultCode == RESULT_OK){ 
            try { 
             final Uri imageUri = data.getData(); 
             final InputStream imageStream = getActivity().getContentResolver().openInputStream(imageUri); 
             final Bitmap selectedImage = BitmapFactory.decodeStream(imageStream); 
             imageButton.setImageBitmap(selectedImage); 
            } catch (FileNotFoundException e) { 
             e.printStackTrace(); 
            } 
      
           } 
          } 
      } 
      
  • +0

    こんにちは@ダミアン非常にありがとうコードが何かの理由で私はgetActivityメソッドとその部分だけでエラーを取得するそれは別のものになりますか? – Dckw24

    関連する問題