获取recylerView内部的共享元素过渡

时间:2018-12-04 13:16:51

标签: android android-recyclerview android-transitions

我需要在recylerview中向活动进行共享转换,但尝试传递Adpater.this / this / Adapter.class却遇到错误“无法将应用程序转换为活动”,但没有任何作用

 ViewCompat.setTransitionName(holder.imageView, photo.getId());
    holder.imageView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            Intent intent = new Intent(mContext, Fullscreen.class);

            ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation((MainActivity) mContext, holder.imageView, ViewCompat.getTransitionName(holder.imageView));
            mContext.startActivity(intent, options.toBundle());
        }

    });

}

1 个答案:

答案 0 :(得分:0)

问题在(MainActivity)mContext行中。您的mContextApplication类型,但是您尝试将其强制转换为Activity类型,这就是为什么它抛出ClassCastException的原因。将您的字段声明为Activity mContext;而不是Context mContext;,IDE会向您显示您使用错误的类型对象初始化了mContext变量。