Как взять фотографию из галереи и использовать эту фотографию в моем приложении

1

Я хочу сделать снимок из своей галереи, и я хочу дать ему "id" для использования моего приложения для Android.

Показать ещё 1 комментарий
Теги:

2 ответа

1

При щелчке на кнопке даже вызовите следующий код....

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

и, по результату деятельности, напишите следующий код:

if (requestCode == GET_IMAGE) {    
  targetUri = data.getData();
  imageView.setImageURI(targetUri);                 
}

где, private static final int GET_IMAGE = 2;

0

Вы можете попробовать под кодом

    btnChoosePhoto.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent i = new Intent(Intent.ACTION_PICK,
                    android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI);

            startActivityForResult(i, 1);
        }
    });


public void onActivityResult(int requestCode, int resultCode, Intent data) {

    super.onActivityResult(requestCode, resultCode, data);

    if(resultCode == RESULT_OK && requestCode == 1 ) {

        final Uri selectedImage = data.getData();

        try {
            bitmap = Media.getBitmap(getContentResolver(),selectedImage);
            ByteArrayOutputStream bytes = new ByteArrayOutputStream();
            bitmap.compress(Bitmap.CompressFormat.JPEG, 90, bytes);

            //path = selectedImage.getEncodedPath();

            // create new file to write the encrypted bytes of image in file
            File f = new File(Environment.getExternalStorageDirectory()
                    + File.separator
                    + filename);
            f.createNewFile();
            FileOutputStream fo = new FileOutputStream(f);
            fo.write(bytes.toByteArray());

        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        imageView.setImageBitmap(bitmap);

    }
}
  • 0
    Спасибо за ваш ответ. Но я не буду использовать эту картинку как imageView. Я хочу изменить фон другого класса с этим изображением. я могу сделать ?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню