En este primer ejemplo, veremos el ZOOMCONTROLS. Utilizaremos un IMAGEVIEW con la imagen que viene por defecto en ANDROID STUDIO. Podemos utilizar la que queramos. Sólo hay que insertar nuestro SRC.
- Arrastramos de la Palette el ZOOMCONTROLS sobre la ACTIVITY:
-Colocamos, a su gusto, el IMAGEVIEW y ZOOMCONTROLS:
- Este es el JAVA:
public class MainActivity extends AppCompatActivity { ImageView imageView; ZoomControls zoomControls; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imageView=(ImageView)findViewById(R.id.imageView); zoomControls=(ZoomControls)findViewById(R.id.zoomControls); zoomControls.setOnZoomInClickListener(new View.OnClickListener() { @Override public void onClick(View v) { float x = imageView.getScaleX(); float y = imageView.getScaleY(); imageView.setScaleX(x + 1); imageView.setScaleY(y + 1); } }); zoomControls.setOnZoomOutClickListener(new View.OnClickListener() { @Override public void onClick(View v) { float x = imageView.getScaleX(); float y = imageView.getScaleY(); imageView.setScaleX(x - 1); imageView.setScaleY(y - 1); } }); }
Podemos analizar el código de la siguiente manera:
- Al zooControls le pasamos el listener SETONZOOMINCLICKLISTENER y el SETONZOOMOUTCLICKLISTENER, que serán los encargados de augmentar o disminuir la imagen.
- Le decimos que obtenga ( GETSCALE ) el imageView los parámetros X y Y en pantalla.
- Le decimos al imageView que reproduzca ( SETSCALE ) las nuevas proporciones: las recogidas anteriormente y + o - el FLOAT que nos interese. Este FLOAT se puede modificar.
Compila y haz tus modificaciones.
Saludos, espero que sirva de ayuda. Gracias por al visita!