android进页面就运行动画怎么写代码
答案:2 悬赏:10 手机版
解决时间 2021-12-17 00:38
- 提问者网友:只剩难过
- 2021-12-16 11:00
android 进页面就运行动画 怎么写代码
最佳答案
- 五星知识达人网友:久拥深怀
- 2021-12-16 12:24
在onCreate里面写动画相关代码就行了,形如:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_map);
setUpViews();
startPlayAnimation();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_map);
setUpViews();
startPlayAnimation();
}
全部回答
- 1楼网友:我叫哇咔咔
- 2021-12-16 13:09
一、页面过渡兼容库的使用
二、页面过渡兼容库实现原理浅析
三、用兼容库将开源项目materiallogin动画效果兼容至android4.0
代码如下:
//参数一:当前activity
//参数二:跳转意图
//参数三:当前页面跳转至下一页面的view
//参数四:下一页面关联的view id
transitioncontroller.getinstance().startactivity(this,new intent(this, registeractivity.class),fab,r.id.fab);
//跳转后页面调用:
transitioncontroller.getinstance().show(this,getintent());
可在show方法调用之前设置监听:
transitioncontroller.getinstance().setenterlistener(new transitioncustomlistener() {
@override
public void ontransitionstart(animator animator) {
}
@override
public void ontransitionend(animator animator) {
}
@override
public void ontransitioncancel(animator animator) {
}
});
//界面退出的时候调用
transitioncontroller.getinstance().exitactivity(pagedetailactivity.this);
//增加界面圆形转换动画
// 用法及参数和viewanimationutils一致
viewanimationcompatutils.createcircularreveal(cvadd, cvadd.getwidth()/2,0, fab.getwidth() / 2, cvadd.getheight());
//增加界面矩形转换动画
animator manimator = viewanimationcompatutils.createrectreveal( nsv, 0, nsv.getheight(),viewanimationcompatutils.rect_top);
二、页面过渡兼容库实现原理浅析
先讲了这个兼容库的用法,现在来聊聊它是怎么实现的,可以把主要实现细分六步:
1、获取跳转页面过渡元素的位置
2、将跳转过渡元素的位置传给下一个页面
3、在跳转到的页面获取位置信息并创建相同宽高大小的元素和其覆盖屏幕的父容器,并将新创建的元素添加到父容器中,而父容器添加至根视图中
4、获取跳转到的页面元素截图并将其设为创建元素的背景
5、将当前新元素位置与跳转到页面对比获取缩放比例与移动距离并开始动画,结束后将父容器隐藏
6、界面返回时将创建的父容器重新添加至下一个页面动画实现,将创建的元素以动画形式返回初始位置,结束后移除父容器
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯