这就是问题所在:我有一个Main Activity,并且在其中包含一个包含RecyclerView的片段,共享元素位于RecyclerView的viewholder中。当您单击此共享元素时,它将通过共享元素过渡启动新活动。首次启动时,共享元素将闪烁,如果返回,动画播放效果很好。如果您第二次开始相同的元素,动画也将很好地播放。这只是它第一次闪烁。
这是RecyclerView适配器的回调,我通过共享的View并开始其他活动。这段代码在我上面提到的片段中。
@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());
}