首页 > 解决方案 > 共享元素转换到 RecycleView 不起作用

问题描述

我在父活动(水平线性布局)中有一组图像,我想将所有元素转换为 RecycleView 活动(网格布局)共享元素转换在我启动 RecycleView 活动时不起作用,但它在返回父活动时起作用。

单击方法上的 ParentActivity:

Intent intent = new Intent(this, ChildActivity.class);
Pair[] pairs = new Pair[mContent.getChildCount()];
for(int i = 0; i < mContent.getChildCount(); i++){
    View view = mContent.getChildAt(i);
    view.setTransitionName("trans"+i);
    Pair<View, String> pair = Pair.create(view, view.getTransitionName());
    pairs[i] = pair;
}
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, pairs);
ActivityCompat.startActivity(this, intent, options.toBundle());

RecycleViewAdapter 代码:

 @Override
public void onBindViewHolder(final ItemViewHolder holder, int position) {
    ViewCompat.setTransitionName(holder.imageView, "trans"+position);
}

标签: androidandroid-recyclerviewshared-element-transition

解决方案


推荐阅读