是否可以将共享元素过渡动画从活动转换为片段?

时间:2018-01-16 14:39:27

标签: android android-fragments android-animation shared-element-transition

所以我对图像有活动,我希望在图像过渡到片段的情况下在该活动之上显示片段。

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    final View image = findViewById(R.id.image);
    image.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            final DetailsFragment kittenDetails = DetailsFragment.newInstance(1);
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                kittenDetails.setSharedElementEnterTransition(new DetailsTransition());
                kittenDetails.setEnterTransition(new Fade());
                kittenDetails.setSharedElementReturnTransition(new DetailsTransition());
            }
            getSupportFragmentManager()
                    .beginTransaction()
                    .addSharedElement(image, "kittenImage")
                    .replace(R.id.container, kittenDetails)
                    .addToBackStack(null)
                    .commit();
        }
    });
}
}

但那只是不起作用。如果我在两个片段之间做同样的事情就好了。

1 个答案:

答案 0 :(得分:0)

似乎这对于android框架是不可能的,因为addSharedElement的文档说:

  

与自定义过渡一起使用,以从已删除或隐藏的地图中映射视图      的片段