5

所以这就是问题所在:我有一个 Main Activity,其中包含一个包含 RecyclerView 的片段,共享元素位于 RecyclerView 的视图中。当您单击此共享元素时,它会启动一个具有共享元素转换的新活动。第一次启动时,共享元素会闪烁,如果返回,动画会很好地播放。如果您再次启动与之前相同的元素,动画也会很好地播放。它只是第一次闪烁。

这是来自 RecyclerView 适配器的回调,我传递共享视图并启动其他活动。这段代码在我上面提到的片段中。

@Override
public void onClick(int arrayPosition, int position, View view) {
    Movie movie = mMovieLists.get(arrayPosition).getMovieList().get(position);
    Intent intent = new Intent(getActivity(), MovieDetailActivity.class);
    intent.putExtra(MovieDetailActivity.MOVIE_ID_INTENT, movie.getmId());
    ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(getActivity(), view, getString(R.string.movie_poster_trans));
    startActivity(intent, options.toBundle());
}
4

0 回答 0