CARGAR IMAGEN DE LA GALERIA EN IMAGEVIEW

6,003 views
Skip to first unread message

Carlos Sancho

unread,
Aug 30, 2013, 11:31:25 AM8/30/13
to desarrollad...@googlegroups.com
Hola:
Tengo una aplicacion que carga imagenes de la galeria y las muestra.
Pero solo me funciona con imagenes de hasta 6 megapixeles. Las imagenes de 8 se cierra la aplicacion.
Mi codigo es este:

Esta parte es la que lanza el intent de abrir la galeria del movil:

    Intent galeria = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI);
    startActivityForResult(galeria,2);

Y esta otra es la que recibe el data de la foto elejida :

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (data != null) {
if (requestCode == 2) {
Uri selectedImage = data.getData();
File imageFile = new File(getRealPathFromURI(selectedImage));
foto = imageFile.getPath();
    InputStream is;
    try {
    is = getContentResolver().openInputStream(selectedImage);
        BufferedInputStream bis = new BufferedInputStream(is);
        Bitmap bitmap = BitmapFactory.decodeStream(bis); 
        imagen.setImageBitmap(bitmap);
    } catch (FileNotFoundException e) {}
   
    }
  }
}

Tambien guardo la ruta de la imagen en una base de datos sql. El problema esta que con las imagenes de 8 no funciona se cierra la aplicacion.
Me puede ayudar alguien¿?
No se como solucionarlo.
Hay alguna manera de comprimir la imagen o algo que pongo mal¿?
La layout del image view es asi:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@color/Gris_suave"
        android:orientation="vertical"
        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=".MostrarLugar_activity" >

        <ScrollView
            android:id="@+id/scrollView2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_marginLeft="5dp"
                android:layout_marginRight="5dp"
                android:orientation="vertical" >

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="25dp"
                    android:layout_marginTop="5dp"
                    android:orientation="vertical" >

                    <LinearLayout
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:orientation="vertical" >

                        <TextView
                            android:id="@+id/enombre"
                            android:layout_width="fill_parent"
                            android:layout_height="wrap_content"
                            android:layout_gravity="top|right"
                            android:layout_marginBottom="@dimen/a16"
                            android:gravity="top|left|start"
                            android:text="@string/nombre"
                            android:textColor="@color/NEGRO"
                            android:textSize="@dimen/a15"
                            android:textStyle="bold"
                            android:typeface="sans" />

                        <EditText
                            android:id="@+id/editonombre"
                            android:layout_width="fill_parent"
                            android:layout_height="fill_parent"
                            android:layout_gravity="right"
                            android:inputType="textPersonName" />
                    </LinearLayout>

                    <ImageView
                        android:id="@+id/eimagen"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_gravity="center_vertical|center_horizontal"
                        android:src="@drawable/inserta" />
                </LinearLayout>

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical" >

                    <TextView
                        android:id="@+id/edescripcion"
                        android:layout_width="fill_parent"
                        android:layout_height="wrap_content"
                        android:layout_marginBottom="@dimen/a16"
                        android:gravity="top|left|start"
                        android:text="Descripcion:"
                        android:textColor="@color/NEGRO"
                        android:textSize="@dimen/a15"
                        android:textStyle="bold"
                        android:typeface="sans" />

                    <EditText
                        android:id="@+id/edittextdes"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:ems="10"
                        android:inputType="textMultiLine" >

                        
                    </EditText>

                        <Button
                            android:id="@+id/editarcrear"
                            android:layout_width="match_parent"
                            android:layout_height="fill_parent"
                            android:layout_gravity="center_horizontal|center"
                            android:layout_marginTop="15dp"
                            android:background="@drawable/degradadoazul"
                            android:padding="20dp"
                            android:text="Crear"
                            android:textAlignment="center"
                            android:textAllCaps="true"
                            android:textColor="@color/Blanco"
                            android:textStyle="bold"
                            android:typeface="serif" />
                        
                <Button
                   android:id="@+id/editarguardar"
                   android:layout_width="match_parent"
                   android:layout_height="fill_parent"
                   android:layout_gravity="center_horizontal|center"
                   android:layout_marginTop="15dp"
                   android:background="@drawable/degradadoazul"
                   android:padding="20dp"
                   android:text="Guardar"
                   android:textAllCaps="true"
                   android:textColor="@color/Blanco"
                   android:textStyle="bold"
                   android:typeface="serif" />
                                                
                  <Button
                     android:id="@+id/editareliminar"
                     android:layout_width="match_parent"
                     android:layout_height="fill_parent"
                     android:layout_gravity="center_horizontal|center"
                     android:layout_marginTop="15dp"
                     android:background="@drawable/degradadoazul"
                     android:padding="20dp"
                     android:text="Eliminar"
                     android:textAllCaps="true"
                     android:textColor="@color/Blanco"
                     android:textStyle="bold"
                     android:typeface="serif" />

                </LinearLayout>

            </LinearLayout>
        </ScrollView>

    </LinearLayout>




yeho

unread,
Aug 30, 2013, 11:36:15 AM8/30/13
to desarrollad...@googlegroups.com
deberias darle una leida a este otro debate, https://groups.google.com/forum/#!searchin/desarrolladores-android/yeho/desarrolladores-android/gp8I5w6VOF4/15ktJuF0_tgJ  me parece que va por ahi

Saludos!!

Gabriel Pozo

unread,
Aug 30, 2013, 12:16:36 PM8/30/13
to desarrollad...@googlegroups.com
Tu problema seguramente es, si vieras el logcat  un error de tipo java.lang.OutofMemoryError: bitmap size exceeds VM budget.
Lo que creo que deberías hacer es re-dimencionar la imagen http://developer.android.com/training/displaying-bitmaps/load-bitmap.html
Dudo mucho que en la pantalla de tu dispositivo necesites mostrar una imagen de 8 megapixeles ;) En ese asunto hablamos de muchas otras opciones para 
arreglar ese problema. De todas maneras y como dicen las normas del grupo, deberías poner acá la salida del logcat cuando ocurre el error, para ver que sucede en tu aplicación.






El 30 de agosto de 2013 12:36, yeho <jsh...@gmail.com> escribió:
deberias darle una leida a este otro debate, https://groups.google.com/forum/#!searchin/desarrolladores-android/yeho/desarrolladores-android/gp8I5w6VOF4/15ktJuF0_tgJ  me parece que va por ahi

Saludos!!

--
Para participar es necesario que leas detenidamente las normas del grupo: http://goo.gl/20KhL
---
Has recibido este mensaje porque estás suscrito al grupo "desarrolladores-android" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a desarrolladores-a...@googlegroups.com.
Para publicar una entrada en este grupo, envía un correo electrónico a desarrollad...@googlegroups.com.
Visita este grupo en http://groups.google.com/group/desarrolladores-android.
Para ver este debate en la Web, visita https://groups.google.com/d/msgid/desarrolladores-android/a924e684-2bb3-4ee8-b6f5-5f0189486b7b%40googlegroups.com.

Para obtener más opciones, visita https://groups.google.com/groups/opt_out.



--
Saludos, Gabriel

http://aprendiendodeandroidymas.com/
Reply all
Reply to author
Forward
0 new messages