将Context放在RecyclerView的适配器中

时间:2016-02-17 17:58:22

标签: android

所以,我正在RecyclerView中推出一个项目的“YouTube播放器”onClick。但是,我有一个问题:

Intent intent = YouTubeStandalonePlayer.createVideoIntent(itemView.getContext(), DeveloperKey.DEVELOPER_KEY, "cdgQpa1pUUE");
itemView.getContext().startActivity(intent);

其中itemView是视图,在此处

createVideoIntent(itemView.getContext()

Android工作室说:

  

找到错误的第一个参数类型,'Android.content.Context',必填   'android.app.Activity'

我该如何解决?我尝试了类似的问题,但其中的解决方案仅限于片段和支持性库,如v4和v7。任何帮助将不胜感激,谢谢!

3 个答案:

答案 0 :(得分:2)

public class MyAdapter extends BaseAdapter {
        private Context context;

        public SampleAdapter(Context Mcontext) {
            this.context = Mcontext;
        }

        /* ... other methods ... */
    }

答案 1 :(得分:2)

试试这个,

Activity activity = (Activity) itemView.getContext();
Intent intent = YouTubeStandalonePlayer
        .createVideoIntent(activity, DeveloperKey.DEVELOPER_KEY, "cdgQpa1pUUE");
itemView.getContext().startActivity(intent);

答案 2 :(得分:0)

将您的活动传递给循环视图。

例如:

public MyAdapter(MyActivity activity){
   this.activity = activity;
}

YouTubeStandalonePlayer.createVideoIntent(this.activity, DeveloperKey.DEVELOPER_KEY, "cdgQpa1pUUE");
        itemView.getContext().startActivity(intent);