缩放View

    这节课展示怎样实现点击缩放动画,这对相册很有用,他能为相片从缩略图转换成原图并填充屏幕提供动画。

    下面展示了触摸缩放动画的效果,它将缩略图扩大并填充屏幕。





    • (简单的helper类,当Image Button被按下它显示蓝色高亮)
    • src/ZoomActivity.java

    为想要缩放的内容创建一大一小两个版本布局文件。下面的例子为可点击的缩略图新建了一个ImageButton和一个来展示原图:

    一旦实现了布局,我们需要设置触发缩放动画的事件handler。下面的例子为ImageButton添加了一个,当用户点击按钮时它执行放大动画。

    1. 把高清图像资源设置到已经被隐藏的“放大版”的ImageView中。为表简单,下面的例子在UI线程中加载了一张大图。但是我们需要在一个单独的线程中来加载以免阻塞UI线程,然后再回到UI线程中设置。理想状况下,图片不要大过屏幕尺寸。

    2. 计算开始和结束时的边界。

    3. 缩小则运行相同的动画,但是是在用户点击屏幕放大时的逆向效果。我们可以在ImageView中添加一个来实现它。当点击时,ImageView缩回到原来缩略图的大小,然后设置它的visibility为来隐藏。