Android共享元素转场开始动画有延迟
创始人
2024-10-08 00:00:18
0

共享元素转场动画中,可以使用setStartDelay(long startDelay)方法来设置开始动画的延迟时间。但是,这会导致共享元素在开始动画之前消失或者在目标Activity中的元素显示不完整。为了避免这种情况,可以在onActivityReenter()方法中使用postponeEnterTransition()方法来推迟进入目标Activity的动画,并在目标Activity中onCreate()方法中调用startPostponedEnterTransition()方法来开始进入动画。

代码示例:

//在源Activity中的onCreate()方法中 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //设置共享元素进入动画的监听器 setEnterSharedElementCallback(new MyCallback()); }

//进入目标Activity时的回调函数 @Override public void onActivityReenter(int resultCode, Intent data) { super.onActivityReenter(resultCode, data); //postponeEnterTransition()方法可以推迟进入目标Activity的动画 postponeEnterTransition(); //设置共享元素进入动画的监听器 setEnterSharedElementCallback(new MyCallback()); }

//在目标Activity中的onCreate()方法中 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_detail); //开始进入动画 startPostponedEnterTransition(); }

//共享元素转场动画的监听器 private class MyCallback extends SharedElementCallback { @Override public void onMapSharedElements(List names, Map sharedElements) { //添加共享元素到集合中 sharedElements.put("img_photo", imgPhoto); //开始共享元素的进入动画 startPostponedEnterTransition(); } }

相关内容

热门资讯

2026版辅助挂!约局吧脚本有... 2026版辅助挂!约局吧脚本有用吗"一直确实有辅助脚本"(哔哩哔哩);小薇(辅助器软件下载)致您一封...
于此同时!广西老友玩游戏辅助器... 于此同时!广西老友玩游戏辅助器"总是是真的有辅助方法"(哔哩哔哩)于此同时!广西老友玩游戏辅助器"总...
近日!贪玩娱乐科技"... 近日!贪玩娱乐科技"一贯存在有辅助神器"(哔哩哔哩)1、在贪玩娱乐科技插件功能辅助器技巧中,中转单元...
据目击者称!越乡游义乌辅助器&... 据目击者称!越乡游义乌辅助器"好像真的有辅助技巧"(哔哩哔哩)越乡游义乌辅助器破解侠是真的助透视。每...
此事备受玩家关注!九酷众娱辅助... 此事备受玩家关注!九酷众娱辅助"都是存在有辅助插件"(哔哩哔哩)1)九酷众娱辅助有没有挂:进一步探索...
黑科技技巧!福建天天开心无限辅... 黑科技技巧!福建天天开心无限辅助科技"切实确实有辅助教程"(哔哩哔哩)1、操作简单,无需福建天天开心...
总结辅助挂!皇豪互众可以控制吗... 总结辅助挂!皇豪互众可以控制吗"果然存在有辅助攻略"(哔哩哔哩)1、完成皇豪互众可以控制吗辅助器v3...
现场直击!衢州都莱有没有挂&q... 现场直击!衢州都莱有没有挂"一直真的有辅助教程"(哔哩哔哩)1、衢州都莱有没有挂辅助器安装包、衢州都...
做出回应!福建天庭啊开心辅助软... 做出回应!福建天庭啊开心辅助软件"本来真的有辅助方法"(哔哩哔哩)福建天庭啊开心辅助软件能透视中分为...
无独有偶!新上游辅助软件&qu... 无独有偶!新上游辅助软件"果然确实有辅助方法"(哔哩哔哩)1、下载好新上游辅助软件脚本下载之后点击打...