Android
Bitmaps effektiv laden
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 anfordernandroid: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.
- Zunächst benötigen Sie die Erlaubnis
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
- Verwenden Sie den folgenden Code, um das Layout wie folgt festzulegen.
<?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>
- 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);
}
});
- 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