xunmengwinter / circularanim Goto Github PK
View Code? Open in Web Editor NEWAndroid ripple animation helper, easy to create Circular Reveal. | Android水波动画帮助类,轻松实现View show/hide/startActivity()特效。(0.4.6)
Android ripple animation helper, easy to create Circular Reveal. | Android水波动画帮助类,轻松实现View show/hide/startActivity()特效。(0.4.6)
希望对你有帮助哈
原作品那个怎么没有github下载的链接啊,,大神求链接
以前找的statuebar、badge、推送在小米上都麻烦的要命..
这次果然activity跳转又被坑进去了..
不吐不快啊
P.S谢谢大神的作品,一个字:酷!
所有华为手机上 都有这个动画掉帧问题 官方的circularRevealAnim却不会掉帧
点击:mTvDoorTopConfirm.setEnabled(false);
progressbar.setVisibility(View.VISIBLE);
// 收缩按钮
CircularAnimUtil.hide(mTvDoorTopConfirm);
请求返回数据:progressbar.setVisibility(View.GONE);
mTvDoorTopConfirm.setEnabled(true);
// 伸展按钮
CircularAnimUtil.show(mTvDoorTopConfirm);
代码是这样的,
java.lang.IllegalStateException: Cannot start this animator on a detached view!
at android.view.RenderNode.addAnimator(RenderNode.java:812)
at android.view.RenderNodeAnimator.setTarget(RenderNodeAnimator.java:300)
at android.view.RenderNodeAnimator.setTarget(RenderNodeAnimator.java:282)
at android.animation.RevealAnimator.<init>(RevealAnimator.java:37)
at android.view.ViewAnimationUtils.createCircularReveal(ViewAnimationUtils.java:55)
at com.xxx.xxx.util.CircularAnimUtil$2$1.run(CircularAnimUtil.java:147)
ActivityAnimUtil.startActivity(getActivity(), FirstActivity.class, view, R.color.activity_anim);
当按返回键返回主activity中的fragment时,有一定几率不出现回退动画。
android 6.0
startActivity 新的activity 有fadein的效果, 但是decorview 下面添加的view 好像没效果
我设置的color #ffffff
CircularAnim.show(login).go();
只让按钮显示 没有动画。
原因:收縮动画未完成,展开动画就开始了。可否修改逻辑仅当前一个动画完成后下一个动画才开始
另外,如果能开放系统动画的delay接口,就更好了。
Hi, my code is the following:
CircularAnim.fullActivity(MyActivity.this, view).colorOrImageRes(R.color.blue_dark).go(new CircularAnim.OnAnimationEndListener() { @Override public void onAnimationEnd() { startActivity(intent); } });
The error is:
Fatal Exception: java.lang.IllegalStateException: Cannot start this animator on a detached view! at android.view.RenderNode.addAnimator(RenderNode.java:817) at android.view.RenderNodeAnimator.setTarget(RenderNodeAnimator.java:300) at android.view.RenderNodeAnimator.setTarget(RenderNodeAnimator.java:282) at android.animation.RevealAnimator.(RevealAnimator.java) at android.view.ViewAnimationUtils.createCircularReveal(ViewAnimationUtils.java:53) at top.wefor.circularanim.CircularAnim$FullActivityBuilder$1$1.run(CircularAnim.java:254) at android.os.Handler.handleCallback(Handler.java:815) at android.os.Handler.dispatchMessage(Handler.java:104) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:6102) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
It appears on Android 5 and 6.
Thanks.
.colorOrImageRes(Color.RED)
大神这个是不是不支持4.X的版本啊
使用了fullactivity,然后在里面不管startanimator和returnanimator的duration设置多短,这两个动画中间似乎有一个有一个比较长的时间?就是,比如我点一个按钮触发fullactivity(实际上只是replace一个fragment), 然后会先快速出现覆盖全屏水波,然后停了大概两秒,然后水波收回,出现另外一个fragment。中间的那两秒的时间如何改?然后,是否可以设置然后水波不收回直接显示新的fragment?
可以试试这个网站呢:http://ezgif.com/video-to-gif
int cx = (myView.getLeft() + myView.getRight()) / 2;
int cy = (myView.getTop() + myView.getBottom()) / 2;
这个地方应该取得view的中心坐标吧,应该是getRight - getLeft,我测试代码的时候发现水波中心确实不在正中间。
如题
我使用CircularAnim.hide(view).go后使用CircularAnim.show(view).go无法显示出button..求大佬帮助
来来来,楼主,我教你:http://xyzlf.github.io/2016/07/10/android-aar-jcenter.html 如果还有疑问,可以给我邮件哦..
jcenter 发布是挺烦的,而且会有数量限制,不介意可以试试 jitpack.io,直接在 github 上加个 tag,然后地址贴过去就可以了
连续点击后神奇的消失了???
How do I manage to reproduce the reveal animation for the full activity ???
thanks. 👍
您好,首先感谢提供这么好用的功能
我感觉铺满颜色启动页面时新页面出现有点延迟。。
也就是说全屏颜色的时候会停顿一下,
有没有办法像你在文档开头放的那张UI图那样,
颜色在刚刚铺满屏幕的时候马上显示出新的页面。
不知道这个停顿的时间是不是依赖于activity的启动时间
或者说跟设备的内存等属性也有关系
有没有可能让铺满颜色的效果像Toast那样运行在activity之上
这样在跳转页面时就可以直接启动activity
而不是等动画执行完再启动
不知道我这个想法对吗。。。
再次感谢
可否增加一个返回时circleReveal动画的duration设置和interceptor呢?感觉返回的动画好生硬。
@XunMengWinter
你好!在Activity返回时,没有水波收缩动画
我看到在你的demo里MainActivity启动一个EmptyActivity时有一个水波扩散动画,然后以淡入淡出的形式出现另一个EmptyActivity,然后在退出EmptyActivity的时候,会有一个水波收缩的动画,然后显示出MainActivity。我看你的代码里写的是
// 默认显示返回至当前Activity的动画. triggerView.postDelayed(new Runnable() { @Override public void run() { Animator anim = ViewAnimationUtils.createCircularReveal(view, cx, cy, finalRadius, 0); anim.setDuration(finalDuration); anim.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { super.onAnimationEnd(animation); try { decorView.removeView(view); } catch (Exception e) { e.printStackTrace(); } } }); anim.start(); } }, 1000);
这段代码里是紧接着在启动EmptyActivity之后的,那为什么在退出EmptyActivity之后还能看到水波收缩的动画呢?不是在启动EmptyActivity之后,MainActivity里不会执行这段代码吗?是不是因为失去焦点,然后这个triggerView的动画就不执行,然后等从EmptyActivity返回到MainActivity后得到焦点就再继续执行,所以才造成退出EmptyActivity的时候可以看到triggerView的水波收缩动画呢?
我把EmptyActivity设置成透明的之后,再启动EmptyActivity会发现MainActivity中triggerView会在过一秒钟之后就自动执行收缩动画了。然后再按返回键就没有了之前的返回动画效果了(因为上面那段代码已经执行了)。
Activity A >> ActivityB时永远会有动画,
但Activity B 执行onBackPressed()时,有一定几率不执行收回动画;
onBackPressed()并没有@OverRide
Activity A >> Activity B后,
Activity B >> Activity C;
Activity C onBackPressed()回到Activity B, 此时Activity B执行onBackPressed(),不会出现返回动画
以上,只在Activity A中的onClick()中使用了
CircularAnimUtil.startActivity(this, f2lIntent, iv_first_layout_menu, R.color.bluegrey_900);
用那个铺满屏幕启动Activity 时 图片(颜色)还没铺满屏幕 Activity 就启动了 而且还是从后面弹出来那种切换效果 怎么解.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.