Per caso, qualcuno sa come accedere alla galleria fotografica del telefono? Sto facendo un'applicazione che riprende un'immagine di una foglia di pianta e analizza l'immagine per determinare se è determinata o meno. Speravamo che noi potessimo offrire all'utente due opzioni per scattare la foto della foglia o usare un'immagine di una foglia che l'utente ha già scattato. Tuttavia, abbiamo preso la foto partecipando, ma non sappiamo come accedere alla galleria fotografica .Come accedere a un'immagine dalla galleria fotografica del telefono?
17
A
risposta
32
È necessario avviare l'app Galleria utilizzando Intents
incorporato. Dopo di che, sul onActivityResult()
, ottenere il percorso dell'immagine selezionata e caricare la vostra immagine nel vostro ImageView
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:id="@+id/loadimage"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Load Image"
/>
<TextView
android:id="@+id/targeturi"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/targetimage"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
tua attività
package com.exercise.AndroidSelectImage;
import java.io.FileNotFoundException;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class AndroidSelectImage extends Activity {
TextView textTargetUri;
ImageView targetImage;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button buttonLoadImage = (Button)findViewById(R.id.loadimage);
textTargetUri = (TextView)findViewById(R.id.targeturi);
targetImage = (ImageView)findViewById(R.id.targetimage);
buttonLoadImage.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 0);
}});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK){
Uri targetUri = data.getData();
textTargetUri.setText(targetUri.toString());
Bitmap bitmap;
try {
bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(targetUri));
targetImage.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
14
Do non dimenticare di aggiungere le seguenti autorizzazioni a AndroidManifest.xml:
<uses-permission android:name="android.permission.MANAGE_DOCUMENTS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Problemi correlati
- 1. Impostazione didascalie nella galleria fotografica Galleria
- 2. Una galleria fotografica reattiva con funzionalità Swipe
- 3. Come caricare le foto dalla galleria fotografica e memorizzarle nel progetto di applicazione?
- 4. visualizza un'immagine casuale dalla galleria del telefono e visualizza in visualizzazione
- 5. Impostazione dell'immagine scattata dalla galleria a UIImageView
- 6. Seleziona più immagini dalla libreria fotografica
- 7. Come forzare il caricamento del file dalla fotocamera senza scegliere nella galleria su IOS?
- 8. Immagine proveniente dalla fotocamera o dalla galleria?
- 9. Come arrivare percorso dell'immagine appena catturato dalla macchina fotografica
- 10. Come scorrere una galleria fotografica in modo rapido con la struttura delle foto
- 11. Ottieni l'estensione del file da immagini prelevate dalla galleria o dalla fotocamera, come stringa
- 12. Viene prelevata un'immagine Android dalla galleria ruotata
- 13. Caricamento di immagini app ioniche dalla fotocamera/libreria fotografica
- 14. Ricezione di un intento ACTION_SEND dalla Galleria
- 15. Impossibile accedere nell'ambito del controllore dalla direttiva
- 16. Android ottiene solo l'immagine dalla galleria
- 17. come nascondere le immagini dalla galleria di Android
- 18. Scegli un'immagine dalla fotocamera o dalla galleria utilizzando PhoneGap
- 19. Permesso di runtime per Android 6 per accedere alla galleria.
- 20. Come accedere a Ember Model dalla Route in Ember CLI
- 21. Come accedere a Ember Data Store dalla console?
- 22. come nascondere foto dalla galleria e memorizzarlo nella mia app
- 23. widget di galleria fotografica di Facebook per il mio sito web?
- 24. Come aprire una cartella particolare dalla galleria in Android?
- 25. Come ottenere l'orientamento corretto dell'immagine selezionata dalla galleria Immagine predefinita
- 26. Come caricare un'immagine nella vista immagine dalla galleria?
- 27. Carica un'immagine dalla fotocamera o galleria in WebView
- 28. photo Semplice galleria gemma
- 29. Come accedere a un Resource.resx dalla pagina ASP.NET?
- 30. Come differire la sostituzione per accedere a var dalla ricerca?
Sto cercando di mettere l'immagine caricata come sfondo sai come? – nothingness
READ_EXTERNAL_STORAGE è necessario solo se non si dispone già di WRITE_EXTERNAL_STORAGE. Sei sicuro che MANAGE_DOCUMENTS abbia senso? https://developer.android.com/reference/android/Manifest.permission.html dice: "Questa autorizzazione deve essere richiesta solo dall'app di gestione della documentazione della piattaforma. Questa autorizzazione non può essere concessa a app di terze parti." –