2014-04-30 35 views
1

我有一个形象:动画效果ImageView的高度

enter image description here

我加入这个图像作为源到自定义的ImageView:

public class TopCropImageView extends ImageView { 


public TopCropImageView(Context context) { 
     super(context); 
     setScaleType(ScaleType.MATRIX); 
    } 

    public TopCropImageView(Context context, AttributeSet attrs) { 
     super(context, attrs); 
     setScaleType(ScaleType.MATRIX); 
    } 

    public TopCropImageView(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
     setScaleType(ScaleType.MATRIX); 
    } 

    @Override 
    protected boolean setFrame(int l, int t, int r, int b) { 
     Matrix matrix = getImageMatrix(); 
     float scaleFactor = getWidth() 
       /(float) getDrawable().getIntrinsicWidth(); 
     matrix.setScale(scaleFactor, scaleFactor, 0, 0); 
     setImageMatrix(matrix); 
     return super.setFrame(l, t, r, b); 
    } 
} 

然后我只给100dp高度此TopCropImageView在xml和imageview中看起来像:

enter image description here

这就是我想要的。

的问题是,当我点击的形象,我希望它扩大,从而成为第一个图像。就像横幅扩大一样。

我与的LayoutParams做到了这一点,但我想制作动画。

我曾尝试缩放动画,但这样做,图像的小部分只扩大。

我想ImageView的表现像窗帘,从而使背景图像可见。 请帮助。

谢谢

回答