Android Studio: Bilder aus dem android-Galerie
Ich bin neu über die Programmierung in Java und Android Studio. Ich bin versuchen, um eine kurze app-Dank der Beiträge von anderen Programmierern hier: eine app mit einem "Durchsuchen Sie Aus Galerie" - button -> wenn ich drauf klicke kann ich mein android-Galerie geöffnet ist, dann wähle ich ein Bild und ich würde es für angezeigt, auf die Bildansicht ich erstellt.
Gelang es mir den Zugriff auf meine android-Galerie nach dem drücken auf die Schaltfläche und wählen Sie ein Bild, aber nichts angezeigt auf der Bildansicht.
hier ist die main.xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container"
android:layout_width="match_parent" android:layout_height="match_parent"
tools:context=".BlankActivityWithFragment" tools:ignore="MergeRootFrame">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Browse from Gallery"
android:id="@+id/button"
android:layout_gravity="left|top"
android:onClick="onButtonClicked"
android:enabled="true" />
<ImageView
android:layout_width="200dp"
android:layout_height="200dp"
android:background="#ffaaaa"
android:id="@+id/imageViewGallery"
android:layout_gravity="center_horizontal|top" />
</FrameLayout>
wie Sie sehen können, Navigieren Sie Aus der Galerie die Schaltfläche rufen onButtonClicked-Funktion.
hier mein java-code:
public class ImagesProj extends Activity {
//define the variable that will show the gallery images
ImageView imageViewGallery;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.images_proj);
//connect the variable to the images_proj.xml
imageViewGallery = (ImageView) findViewById(R.id.imageViewGallery);
if (savedInstanceState == null) {
getFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment())
.commit();
}
}
//This function is called after clicking the Browse From Gallery button
public boolean onButtonClicked(View view) {
//access the images gallery
Intent intent = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 2);
return true;
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 2 && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
//String picturePath contains the path of selected Image
//Show the Selected Image on ImageView
ImageView imageView = (ImageView) findViewById(R.id.imageViewGallery);
imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));
}
}
}
bitte helfen Sie mir, um die Anzeige des gewählten Bildes, danke!
den post habe ich versucht zu schauen:
Kommissionierung ein Foto aus der Galerie aus und zeigen Sie in einem Bild anzeigen
Ich bekomme keine Fehlermeldung/Absturz. das Bild nur nicht angezeigt
geben Sie den code in Ordnung scheint, haben Sie sichergestellt, dass onActivityResult-Methode wird immer aufgerufen, wie erwartet ?
ja, es sieht in Ordnung, wenn ich es Debuggen
Kommentar der Bildpfad für eine bestimmte image Sie bitte hier
InformationsquelleAutor Erez Shmiel | 2015-03-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
nach vielen Stunden der versuche, alles, was ich tun musste, um diese Zeile ergänzt, um die manifest.xml:
Ich weiß nicht, warum ich brauchte "SCHREIBEN...." aber es hat geklappt 🙂
vielen Dank an alle für die versuchte Hilfe
stackoverflow.com/questions/33274732/...
InformationsquelleAutor Erez Shmiel
Könnte es sein, dass Bild ist sehr groß und einfach aufrufen decodeFile auf dem Weg wird sich nicht einstellen die bitmap in die Bildansicht.
Nutzen Sie die Bibliothek (wie die meisten Menschen :P) oder schauen Sie in die Möglichkeiten der Anpassung an die Abmessungen der Bildansicht. btw Bibliothek sparen Sie jede Menge Mühe, aber Sie wird besser, nur tun Sie es selbst.
InformationsquelleAutor blockwala