Menú contextual para guardar imágenes en una vista web de Android
He vertido sobre preguntas similares, pero no puedo encontrar la respuesta. Quiero ser capaz de pulsar las imágenes subidas por el usuario en mi webview para guardarlas (como se puede en un navegador). ¿Alguna ayuda?
Actualizar:
- Android webview pinch zoom Problema
- Android: ¿Cómo comprobar si el archivo es imagen?
- Cómo obtener URL de enlace en Android WebView con HitTestResult para una imagen vinculada (y no la URL de imagen) con Longclick
- Picture.writeToStream () no escribiendo todos los mapas de bits
- Imagen de publicación de Android en la pared de Facebook
El menú contextual está apareciendo ahora con mi propio elemento personalizado "Guardar imagen". Incluso puedo brindar msgs. ¿Cómo puedo guardar la imagen sin embargo? ¿Se está pasando la imagen que hace mucho tiempo clic al elemento de mi menú?
public boolean onLongClick(View v) { openContextMenu(v); return true; } @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.context, menu); } @Override public boolean onContextItemSelected(MenuItem item) { AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); switch (item.getItemId()) { case R.id.save_image: Toast.makeText(this, "save failed", Toast.LENGTH_LONG).show(); return true; default: return super.onContextItemSelected(item); } }
- ByteArrayOutputStream a un FileBody
- Conversión dinámica de imagen en binario y viceversa
- Los bordes en la imagen no son suaves después de setpixels en android
- Cómo convertir una imagen Drawable de recursos a un mapa de bits
- Buscar la posición de ImageView en relación con la imagen que está mostrando
- haciendo que una forma de botón de imagen sea la misma que la imagen
- La imagen transparente de PNG no parece agradable
- Cómo detectar fotos oscuras en Android
Primero registre el WebView para los menús contextuales de la siguiente manera: activity.registerForContextMenu(webView)
@Override protected void onCreateContextMenu(ContextMenu menu) { super.onCreateContextMenu(menu); HitTestResult result = getHitTestResult(); MenuItem.OnMenuItemClickListener handler = new MenuItem.OnMenuItemClickListener() { public boolean onMenuItemClick(MenuItem item) { // do the menu action return true; } }; if (result.getType() == HitTestResult.IMAGE_TYPE || result.getType() == HitTestResult.SRC_IMAGE_ANCHOR_TYPE) { menu.setHeaderTitle(result.getExtra()); menu.add(0, ID_SAVEIMAGE, 0, "Save Image").setOnMenuItemClickListener(handler); }
Para guardar tus imágenes simplemente usa esta
- ¿Puedo definir un filtro de intenciones dinámico en mi aplicación de Android?
- Configurar el tono de llamada de mi carpeta sin procesar en android