Botón de exploración de imágenes en la actividad de Android
Actualmente estoy desarrollando una aplicación que requiere un botón de exploración en mi actividad. Cuando presiono el botón de navegación debería ser capaz de navegar por los archivos de imagen en mi tarjeta SD, así como en la memoria del teléfono. Al seleccionar el archivo de imagen debe seleccionarse y la ruta del archivo de imagen (es decir, donde se encuentra el archivo de imagen seleccionado) debe mostrarse en la actividad en una vista de texto. Además, la imagen seleccionada debe mostrarse en una vista de imagen. ¿Como hacer esto? Puede alguien ayudarme..
- Cómo desarrollar complementos para el navegador nativo de Android
- ¿Cómo puedo iniciar una URL desde mi aplicación en Android?
- Zoom en los sitios web en android sdk emulator
- Obtener los marcadores del navegador predeterminado y guardarlos en un archivo de texto
- Experiencia nativa de Facebook en el navegador
- Android - Añadir nueva pestaña cuando haga clic en botón como Google Chrome nuevo botón?
- ¿El navegador web de Android permite subir fotos tomadas de la cámara?
- ¿Cómo debo elegir un formato de video para reproducirlo en Web, Android e iOS?
- ¿Se puede depurar el javascript en el navegador nativo de una tableta Samsung?
- Desarrollo de un monitor web en Android
- Programación de Android: ¿Por dónde empezar para crear un navegador de archivos simple?
- Ocultar la barra de direcciones del navegador móvil en cromo (android)
- Geolocalización de HTML5 en el navegador de aplicaciones de Facebook: no se permite / bloquea la solicitud
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"> <ImageView android:id="@+id/imgView" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"></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="center"></Button> </LinearLayout>
MainActivity.java
package com.example.yourpackage; import android.app.Activity; import android.content.Intent; import android.database.Cursor; import android.graphics.BitmapFactory; import android.net.Uri; import android.os.Bundle; import android.provider.MediaStore; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class MainActivity extends Activity { private static int RESULT_LOAD_IMAGE = 1; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button buttonLoadImage = (Button) findViewById(R.id.buttonLoadPicture); buttonLoadImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { Intent i = new Intent( Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); startActivityForResult(i, RESULT_LOAD_IMAGE); } }); } @Override 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)); } } }
Añadir permiso en el manifiesto
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />