Suche…


Einführung

Dieses Thema konzentriert sich hauptsächlich auf das effektive Laden der Bitmaps in Android-Geräten.

Beim Laden einer Bitmap stellt sich die Frage, woher sie geladen wird. Hier besprechen wir, wie Sie die Bitmap von Resource in das Android-Gerät laden. zB aus der Galerie.

Wir werden dies anhand von Beispielen durchgehen, die im Folgenden erläutert werden.

Syntax

  • <uses-permission> -> Tag, das für die Berechtigung verwendet wird.
  • android:name -> Ein Attribut, das verwendet wird, um der Berechtigung, die wir anfordern android:name , einen Namen zu geben.
  • android.permission.READ_EXTERNAL_STORAGE -> android.permission.READ_EXTERNAL_STORAGE
  • Beispiel "android.permission.CAMERA" oder "android.permission.READ_CONTACTS"

Laden Sie das Bild von der Ressource vom Android-Gerät. Absichten verwenden.

Verwenden von Absichten zum Laden des Bildes aus der Galerie.

  1. Zunächst benötigen Sie die Erlaubnis
  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
  1. Verwenden Sie den folgenden Code, um das Layout wie folgt festzulegen.

Layout visuell

   <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="androidexamples.idevroids.loadimagefrmgallery.MainActivity">

    <ImageView
        android:id="@+id/imgView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="@color/abc_search_url_text_normal"></ImageView>

    <Button
        android:id="@+id/buttonLoadPicture"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0"
        android:text="Load Picture"
        android:layout_gravity="bottom|center"></Button>

</LinearLayout>
  1. Verwenden Sie den folgenden Code, um das Bild mit der Schaltfläche Klicken anzuzeigen.

Button Click wird sein

Button loadImg = (Button) this.findViewById(R.id.buttonLoadPicture);
loadImg.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        Intent i = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
        startActivityForResult(i, RESULT_LOAD_IMAGE);
    }
});
  1. Sobald Sie auf die Schaltfläche geklickt haben, wird die Galerie mit Hilfe der Absicht geöffnet.

Sie müssen ein Bild auswählen und zur Hauptaktivität zurückschicken. Mit Hilfe von onActivityResult können wir das schaffen.

protected void onActivityResult(int requestCode, int resultCode, Intent data)  {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == RESULT_LOAD_IMAGE && 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();

        ImageView imageView = (ImageView) findViewById(R.id.imgView);
        imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));

    }
}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow