Android 两Activity之间动画效果(3)---------缩放,仿QQ头像点击放大
2013-08-28 10:57
726 查看
这篇文章要实现的效果是,点击头像之后,图片要放大占满全屏,又不失真
因为有了前面两篇文章的基础,所以不再详细解释,只写关键部分两xml 如下
img_scale_in:
Img_scale_out:
其中 fromXScale 范围0到无限大 1.0代表图像本身多大就多大,不会放大和缩小,比1小是缩小,比1大是放大最后在AndroidManifest属性里面配置下activity Theme
再有一个小知识,因为要在两个Activity之间要传递bitmap,所以顺带把关键代码贴出来:
传递:
Intent intent = new Intent(this, ShowImagePage.class);
// intent传递bitmap
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] bitmapByte = baos.toByteArray();
intent.putExtra("bitmap", bitmapByte);
this.startActivity(intent);
接收:
Intent intent = getIntent();
if (intent != null)
{
byte[] bis = intent.getByteArrayExtra("bitmap");
bitmap = BitmapFactory.decodeByteArray(bis, 0, bis.length);
}
源码下载
因为有了前面两篇文章的基础,所以不再详细解释,只写关键部分两xml 如下
img_scale_in:
<?xml version="1.0" encoding="utf-8"?> <!-- android:fromXScale="0.001" --> <scale xmlns:android="http://schemas.android.com/apk/res/android" android:duration="200" android:fromXScale="0.001" android:fromYScale="0.001" android:interpolator="@android:anim/accelerate_decelerate_interpolator" android:pivotX="50%" android:pivotY="50%" android:toXScale="1.0" android:toYScale="1.0" />
Img_scale_out:
<?xml version="1.0" encoding="utf-8"?> <scale xmlns:android="http://schemas.android.com/apk/res/android" android:duration="200" android:fromXScale="1.0" android:fromYScale="1.0" android:interpolator="@android:anim/accelerate_decelerate_interpolator" android:pivotX="50%" android:pivotY="50%" android:toXScale="0.001" android:toYScale="0.001" />
其中 fromXScale 范围0到无限大 1.0代表图像本身多大就多大,不会放大和缩小,比1小是缩小,比1大是放大最后在AndroidManifest属性里面配置下activity Theme
<activity android:name=".ShowImagePage" android:label="@string/title_activity_main" android:theme="@style/ImageScale" > </activity>
再有一个小知识,因为要在两个Activity之间要传递bitmap,所以顺带把关键代码贴出来:
传递:
Intent intent = new Intent(this, ShowImagePage.class);
// intent传递bitmap
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] bitmapByte = baos.toByteArray();
intent.putExtra("bitmap", bitmapByte);
this.startActivity(intent);
接收:
Intent intent = getIntent();
if (intent != null)
{
byte[] bis = intent.getByteArrayExtra("bitmap");
bitmap = BitmapFactory.decodeByteArray(bis, 0, bis.length);
}
源码下载
相关文章推荐
- [Android]点击按钮进入下一个Activity时显示动画效果
- iOS实现点击微信头像(放大、缩放、保存)效果
- [Android]点击按钮进入下一个Activity时显示动画效果
- Android 两Activity之间动画效果(2)---------移动效果
- Android 两Activity之间动画效果(1)---------翻页效果
- 实现点击微信头像实现放大头像、缩放头像、保存头像效果
- Android浏览图片,点击放大至全屏效果(包含点击前位置到全屏的动画)
- Android_实现activity之间切换的动画效果(overridePendingTransition)
- Android 两个activity之间“平推”的动画切换效果
- Android TabActivity与Activity之间的动画跳转(主要Tabhost中跳转出来的动画效果解决)
- Android_Activity之间的动画效果
- android中2个activity之间的切换动画效果(共12种)
- android bundle 在activity之间传递数据 点击一组图片放大,再次点击恢复
- <Android> 在Activity之间进行滑动效果的切换Anim动画
- (转载)[Android]点击按钮进入下一个Activity时显示动画效果
- Android RichText 让Textview轻松的支持富文本(图像ImageSpan、点击效果等等类似QQ微信聊天)
- Android 之Activity切换动画效果
- 详解Android实现购物车页面及购物车效果(点击动画)
- 点击某个图片放大到全屏的动画效果
- Android浏览图片,点击放大至全屏效果