2010-10-22 30 views
5

Tengo un ImageView declarado en main.XML. Quiero que sea Zoomed. ¿Cómo se puede hacer esto en Android?Cómo hacer zoom ImageView en Android

+0

http://stackoverflow.com/questions/1939103/how-to-make-my-imageview-zoomable, http://stackoverflow.com/questions/1939103/how -to-make-my-imageview-zoomable – ArK

Respuesta

1

conseguirlo here

public class Zoom extends View { 
    private Drawable image; 
    private int zoomControler=200; 
    public Zoom(Context context) 
    { 
    super(context); 
    image=context.getResources().getDrawable(R.drawable.gallery_photo_1); 
    setFocusable(true); 
    } 
    @Override 
    protected void onDraw(Canvas canvas) { 
    super.onDraw(canvas); 
    //here u can control the width and height of the images........ this line is very important 
    image.setBounds((getWidth()/2)-zoomControler, (getHeight()/2)-zoomControler, (getWidth()/2)+zoomControler, (getHeight()/2)+zoomControler); 
    image.draw(canvas); 
    } 
    @Override 
    public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if(keyCode==KeyEvent.KEYCODE_DPAD_UP)// zoom in 
    zoomControler+=10; 
    if(keyCode==KeyEvent.KEYCODE_DPAD_DOWN) // zoom out 
    zoomControler-=10; 
    if(zoomControler<10) 
    zoomControler=10; 
    invalidate(); 
    return true; 
    } 
    } 
+0

Gracias, funciona bien –

+2

Pero tengo una imagen en el diseño, obtendré la referencia de ese ImageView usando findViewById() y quiero hacer un zoom dinámico. Suponiendo que es LinearLayout vertical, tengo otros widgets debajo de este este ImageView. ¿Cómo hacer zoom dinámicamente en la actividad? –

Cuestiones relacionadas