Activity切换结合动画效果出现白屏的问题
2015-05-31 16:56
961 查看
直接将跳转Activity的代码写在启动动画效果的后面会造成动画无法完整执行以及一段时间的白屏,处理的办法是加上一个监听动画是否完成的监听器
<span style="font-size:18px;"> Animation animation = AnimationUtils.loadAnimation(thisActivity,
R.anim.scale);
animation.setDuration(1000);
set.addAnimation(animation);
v.startAnimation(set);
final View tv = v;
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animation animation) {</span>
<span style="font-size:18px;">tv.setAlpha(0);
Intent intent = new Intent(thisActivity, DisplayActivity.class);
intent.putExtra("url", "https://www.baidu.com");
startActivity(intent);
}
});</span>
在android中有两种动画,一种是Tweened Animations 这种动画的实现较为简单,有旋转,移动,伸缩,淡出等等效果,分别是Alpha——淡出,Scale——伸缩,Rotate——旋转,Translate——移动
还有一种是Frame_by_frame Animations 这种是逐帧动画,需要一个Drawable序列来完成
使用的一些技巧:
1。动画默认是一起实现的
2。关于在确定动画的几个参数时,使用到的,Animation.RELATIVE_TO_SELF这个是相对自己取单位长度,接下来的一个参数的单位就是这个控件本身的长或者宽
Animation.RELATIVE.TO_PARENT这个是相对于父控件取单位长度
3。几种动画的构造方法的介绍:
translate:这种动画的构造方法需要八个参数,分别是起始位置xy,结束位置xy,四个坐标,以及四种取单位长度的办法。
4。Scale:缩放的动画,这个也是八个参数,分别是:收缩前宽度,收缩后宽度,收缩前高度,收缩后高度,xy值取但闻长度的方式,以及xy的初始值,若设置成Animation.RELATIVE_TO_SELF和0.5f搭配,就会在原地进行伸缩
5.也可以加载位于res/anim文件夹里的动画效果,注意一个文件只能放一个动画效果
使用
Animation animation=Animation.loadAnimation(Context context,int resid);来加载动画
<span style="font-size:18px;"> Animation animation = AnimationUtils.loadAnimation(thisActivity,
R.anim.scale);
animation.setDuration(1000);
set.addAnimation(animation);
v.startAnimation(set);
final View tv = v;
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animation animation) {</span>
<span style="font-size:18px;">tv.setAlpha(0);
Intent intent = new Intent(thisActivity, DisplayActivity.class);
intent.putExtra("url", "https://www.baidu.com");
startActivity(intent);
}
});</span>
在android中有两种动画,一种是Tweened Animations 这种动画的实现较为简单,有旋转,移动,伸缩,淡出等等效果,分别是Alpha——淡出,Scale——伸缩,Rotate——旋转,Translate——移动
还有一种是Frame_by_frame Animations 这种是逐帧动画,需要一个Drawable序列来完成
使用的一些技巧:
1。动画默认是一起实现的
2。关于在确定动画的几个参数时,使用到的,Animation.RELATIVE_TO_SELF这个是相对自己取单位长度,接下来的一个参数的单位就是这个控件本身的长或者宽
Animation.RELATIVE.TO_PARENT这个是相对于父控件取单位长度
3。几种动画的构造方法的介绍:
translate:这种动画的构造方法需要八个参数,分别是起始位置xy,结束位置xy,四个坐标,以及四种取单位长度的办法。
4。Scale:缩放的动画,这个也是八个参数,分别是:收缩前宽度,收缩后宽度,收缩前高度,收缩后高度,xy值取但闻长度的方式,以及xy的初始值,若设置成Animation.RELATIVE_TO_SELF和0.5f搭配,就会在原地进行伸缩
5.也可以加载位于res/anim文件夹里的动画效果,注意一个文件只能放一个动画效果
使用
Animation animation=Animation.loadAnimation(Context context,int resid);来加载动画
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories