bytedance / scene

Android Single Activity Framework compatible with Fragment.
Apache License 2.0
2.08k stars 198 forks source link

共享元素动画时长被硬编码 #33

Closed gtf35 closed 4 years ago

gtf35 commented 4 years ago

共享元素动画时长被硬编码为 2500 ms,没找到接口修改,希望可以开放这个设置。 我改为 300 ms 之后发现入场的动画会有卡顿的现象,请教下我可以尝试做哪些优化?

qii commented 4 years ago

你是说的demo里面的动画吗?我记得框架里面的动画好像没有改时长来着

gtf35 commented 4 years ago

硬编码的时长在这里: https://github.com/bytedance/scene/blob/master/library/scene_shared_element_animation/src/main/java/com/bytedance/scene/animation/NavigationTransitionExecutor.java#L172 https://github.com/bytedance/scene/blob/master/library/scene_shared_element_animation/src/main/java/com/bytedance/scene/animation/NavigationTransitionExecutor.java#L99 因为我自己用的时候发现这个动画很慢,设置自己 Transition 的 duration 并不起作用,我就发现了这个硬编码的时长,删掉之后就恢复了正常。 最后有个不情之请,希望完善下共享元素动画的文档,demo 里的用法有点小简单,比如我没找到如何指定入场和退场动画(这个虽然不属于共享元素动画,但是通常和他一起出现,不知道是否支持) 感谢您的跟进,祝您工作顺利

qii commented 4 years ago

我擦,这两个类是要删除的,已经废弃了,现在不用 android.support.transition.Transition 做共享元素动画了,因为系统的实现不满足要求。。。。。。

qii commented 4 years ago

现在都是用 https://github.com/bytedance/scene/blob/master/library/scene_shared_element_animation/src/main/java/com/bytedance/scene/animation/SharedElementSceneTransitionExecutor.java 做共享元素动画,我尽可能抽时间来改进demo和文档吧

gtf35 commented 4 years ago

感谢您的跟进,关于时长的问题已经没有疑惑了,有使用上的问题我再新开 issue,感谢您