正如您在Recyclerview
中点击图片时从视频中看到的那样,在转换到新活动时,图片不顺畅。当我点击返回原始活动时,过渡很顺利。如何在开启活动时顺利完成过渡?
这是启动活动的代码
Intent myIntent = new Intent(getActivity(), WallpaperFullActivity.class);
View sharedView = v.findViewById(R.id.wall_image);
String transitionName = "wall_trans";
ActivityOptionsCompat transitionActivityOptions =
ActivityOptionsCompat.makeSceneTransitionAnimation(getActivity(), sharedView, transitionName);
myIntent.putExtra(WallpaperFullActivity.BUNDLE_TAG, mDataWalls.get(i));
ActivityCompat.startActivity(getActivity(), myIntent, transitionActivityOptions.toBundle());
答案 0 :(得分:2)
看到变量的名称,我想您正在转换为具有高分辨率图像的ImageView。问题可能是,图像的加载需要一些时间,因此在转换时不知道ImageView的最终位置和大小,从而使转换变得不稳定。考虑使用Activity.postponeEnterTransition()
推迟转换,并在加载图片时以Activity.startPostponedEnterTransition()
启动转换。有关详细信息,请参阅this blog entry。