【问题标题】:Shared content transition to header view (Android)共享内容过渡到标题视图 (Android)
【发布时间】:2016-03-17 00:19:34
【问题描述】:

我有以下问题:

我已经定义了两个活动之间的共享元素转换。在第一个活动中,我使用以下代码开始第二个活动:

ActivityOptionsCompat options =ActivityOptionsCompat.makeSceneTransitionAnimation(getActivity(), view.findViewById(R.id.user_picture), transitionName);
ActivityCompat.startActivity(getActivity(), i, options.toBundle());

在第二个活动中,我有一个带有 android:transitionName 的视图,它与 transitionName 变量相同,如果此视图位于设置为活动内容的 xml 文件中,它就可以工作。但是,当这个视图在第二个活动的 onCreate 中作为列表标题的一部分膨胀时:

mListView = (ExpandableListView) findViewById(R.id.user_details_list);
//inflate the header
mHeader = getLayoutInflater().inflate(R.layout.header_user_details, mListView, false);
mListView.addHeaderView(mHeader);

enter 转换似乎没有找到具有相同转换名称的视图,并且不起作用。但是,存在的转换似乎确实找到了这个视图,并且显示正常。 有什么方法可以让 header 膨胀,以便 enter 转换可以找到共享元素?

【问题讨论】:

    标签: android listview shared-element-transition


    【解决方案1】:

    好的,我已经解决了。只需在第二个活动上使用 sharedElementCallback,然后在 onMapSharedElements 方法上手动找到您的视图并将其映射到正确的 transitionName。

    【讨论】:

      猜你喜欢
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      • 2015-12-09
      • 1970-01-01
      • 2016-02-04
      • 2021-06-03
      • 1970-01-01
      • 2018-03-01
      相关资源
      最近更新 更多