Tag: shared element transition

FEATURE_ACTIVITY_TRANSITIONS与FEATURE_CONTENT_TRANSITIONS

我有一些麻烦了解这两个Window标志之间的差异,并不是100%确定何时每个需要使用和为什么。 Window.FEATURE_ACTIVITY_TRANSITIONS的文档说: 使Activity能够通过发送或接收使用makeSceneTransitionAnimation(Activity, Pair[])或makeSceneTransitionAnimation(Activity, View, String)创build的ActivityOptions包来运行活动转换。 而Window.FEATURE_CONTENT_TRANSITIONS的文档说: 用于请求窗口内容更改的标志应该使用TransitionManager进行animation处理。 TransitionManager是使用setTransitionManager(TransitionManager) 。 如果没有设置,将使用默认的TransitionManager 。 该文档指出,以下Window方法需要启用FEATURE_ACTIVITY_TRANSITIONS标志,但不要说FEATURE_CONTENT_TRANSITIONS是否也需要启用(请注意,根据源代码 , FEATURE_ACTIVITY_TRANSITIONS为true , FEATURE_CONTENT_TRANSITIONS为false ,主题应用程序默认): get{Enter,Exit,Return,Reenter}Transition() set{Enter,Exit,Return,Reenter}Transition() getSharedElement{Enter,Exit,Return,Reenter}Transition() setSharedElement{Enter,Exit,Return,Reenter}Transition() getTransitionBackgroundFadeDuration() setTransitionBackgroundFadeDuration() 换句话说,似乎基于此信息, FEATURE_ACTIVITY_TRANSITIONS是应用程序需要启用以使用Lollipop的新的活动转换API的function标志。 然而,我感到困惑的是,Android Developers网站的这篇文章指出,为了实现自定义活动转换,需要启用FEATURE_CONTENT_TRANSITIONS 。 所以这是我的问题: 这两个标志有什么区别? 在这种情况下,“活动转型”和“内容转型”之间有什么区别? 为什么FEATURE_ACTIVITY_TRANSITIONS启用并且FEATURE_CONTENT_TRANSITIONS被默认禁用? FEATURE_CONTENT_TRANSITIONS实际需要的FEATURE_CONTENT_TRANSITIONS标志? 感觉禁用FEATURE_ACTIVITY_TRANSITIONS并启用FEATURE_CONTENT_TRANSITIONS是否合理? 或者FEATURE_CONTENT_TRANSITIONS需要启用FEATURE_ACTIVITY_TRANSITIONS ? 谢谢!