¿Cómo comprobar el tipo de un widget de vista?
Cómo conseguir que el trabajo:
if(findViewById(ResIdWithUnkownType) instanceof Bitmap) { Bitmap bitmap = (Bitmap) findViewById(ResIdWithUnkownType); } else if(findViewById(ResIdWithUnkownType) instanceof ImageView) { ImageView = (ImageView) findViewById(ResIdWithUnkownType); }
- Cómo cargar un ImageView desde un archivo png?
- Java Android - recorte Imagen en ImageView
- Colocar una vista de imagen como imagen de superposición en la vista previa de la cámara
- Establecer la imagen del url a la vista de la imagen
- Quiero transferir la imagen de una actividad a otra
- Antialiased esquinas redondeadas en Android ImageView
- No se puede cargar la imagen de url utilizando picasso
- Imagen de diapositiva suave de una sola manera
- ¿Cómo resaltar ImageView cuando se enfoca o hace clic?
- OutOfMemoryError: Usando una imagen que es 1080 * 1920 haga la página de bienvenida
- Circular ImageView en Xamarin
- Cómo dibujar línea en imageview junto con dedo en android
- Android ImageView Zoom-in y Zoom-out continuamente
El segundo bloque funcionaría bien. El problema es el primero: findViewById
devuelve siempre un objeto View
y Bitmap
no es View
, por lo que la primera sentencia if
nunca se ejecutará.
Esta no es la respuesta, pero para otros que comprueban esta pregunta, en algunos casos instanceof
no funciona (no sé por qué!), Por ejemplo, si desea comprobar si el tipo de vista es ImageView
o ImageButton
(probé esta situación) Obtener los mismos, por lo que escanear utilizar de esta manera:
//v is your View if (v.getClass().getName().equalsIgnoreCase("android.widget.ImageView")) { Log.e("imgview", v.toString()); imgview = (ImageView) v; } else if (v.getClass().getName().equalsIgnoreCase("android.widget.ImageButton")) { Log.e("imgbtn", v.toString()); imgbtn = (ImageButton) v; }
- ¿Cómo reiniciar un servicio muerto automáticamente?
- Generar clave de Facebook SDK Hash para la aplicación de Android en Amazon AppStore