2010-10-22 7 views

Répondre

1

get it 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

Merci, Son fonctionnement bien –

+2

Mais j'ai une image dans la mise en page, j'obtiendrai la référence de ce ImageView en utilisant findViewById() et je veux le zoom dynamiquement. En supposant que c'est linéaire LinearLayout, j'ai d'autres widgets ci-dessous cette imageView. Comment faire pour zoomer dynamiquement dans l'activité? –

Questions connexes