2012-03-19 120 views
0

我在我的屏幕的Center_Horizo​​ntal和Center_Vertical中有一个imageView。 我想放大此图像,缩放的图像仍保持在屏幕的中间位置。使用ScaleAnimation在屏幕中间缩放图像

问题是ScaleAnimation会使图像从左上角越来越大,所以我的图像不会在屏幕中间。

我收获了ScaleAnimation中的XPivot和yPivot,但我不明白它们的用法。

我的目标是从图像中间缩放图像,而不是从左侧角落。

我希望我的问题是可以理解的。

谢谢你的帮助。

回答

2

枢轴值建立了ScaleAnimation发生的中心点。假设图像在视图的中心,则可以使用下面的:

ScaleAnimation sa = new ScaleAnimation(1, 2, 1, 2 
             , Animation.ABSOLUTE 
             , getWidth()/2 
             , Animation.ABSOLUTE 
             , getHeight()/2 
             ); 

枢轴值将被设置为物理显示的中心。如果适用于您的应用程序,您可以使用不同的透视类型值,例如RELATIVE_TO_PARENT。

+0

谢谢@etcetera。 – 2012-10-10 06:09:12