尝试为 Recyclerview 设置 onClick

Trying to set onClick for Recyclerview

我正在尝试设置一个可点击的卡片视图,以便在单击列表中的卡片时,一个片段会在我的回收视图中展开。到目前为止,如果我敬酒,我可以点击注册并显示位置,但是当我尝试在 fragment_container 中膨胀新视图时,我不断收到错误。

下面显示的代码正在抛出 "Error:(49, 54) error: non-static method getFragmentManager() cannot be referenced from a static context"

有人可以告诉我如何解决这个错误吗?

package com.packagename.adapters_holders;

import android.app.Activity;

import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.widget.CardView;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;

import com.packagename.R;
import com.packagename.WhatIWantToDisplayFragment;


/**
 * RecyclerView Holder
 */
public abstract class MyPageHolder extends RecyclerView.ViewHolder{

    protected Activity activity;
    protected MyPageAdapter adapter;
    public TextView txtTitle, txtDescription;
    public ImageView imgImage;
    public View view;


    public MyPageHolder(final View v, final Activity activity, MyPageAdapter adapter) {
        super(v);
        this.activity = activity;
        this.adapter = adapter;

        imgImage = (ImageView) v.findViewById(R.id.cardview_image);
        txtTitle = (TextView) v.findViewById(R.id.cardview_title);
        txtDescription = (TextView) v.findViewById(R.id.cardview_description);
        view = (CardView) v.findViewById(R.id.card_view);

        view = itemView;

        view.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //what to put here

                FragmentManager fm = FragmentActivity.getFragmentManager();
                FragmentTransaction ft = fm.beginTransaction();
                ft.replace(R.id.fragment_container, new WhatIWantToDisplayFragment(), "fragment_screen");
                ft.commit();
                break;




            }
        });
    }


    public void bind(ListItems dataModel, Activity activity, int position) {
        ListItems m = (ListItems)dataModel;
        imgImage.setImageResource(m.image);
        txtTitle.setText(m.title);
        txtDescription.setText(m.description);
    }


}

你不能像那样创建 FragmentManager 实例
FragmentManager fm = FragmentActivity.getFragmentManager();

改为使用 activity 个实例创建一个。
FragmentManager fm = activity.getFragmentManager();