使用回收器适配器获取空指针

Getting null pointer with recycler adapter

我的应用程序由于片段代码中的 recyclerview 适配器的空指针而崩溃。我正在使用此适配器生成卡片视图列表,但无法找出导致此空指针的确切原因。在水龙头 class.

中设置适配器 r.setAdapter(rA) 时,日志会发生这种情况

片段代码

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{

    v = inflater.inflate(R.layout.faucetcards, container, false);
    r = (RecyclerView) getActivity().findViewById(R.id.feedRecyclerView);

    rA = new RecyclerAdapter(generateCards());
    lm = new LinearLayoutManager(getActivity());
    r.setAdapter(rA);
    r.setLayoutManager(lm);

    return v;
}

更新:

我的错误在于 r 或设置适配器。这就是空指针出现的地方,即使 rA 不为空

r.set 适配器 (rA) 处出现空指针,因为 r 为空。

r 为 null 的原因是您试图在 Fragment 的父级中找到 RecyclerView Activity。但是 RecyclerView 包含在 Fragment 的布局中,您在 onCreateView 方法中将其膨胀并存储在 v 中。因此您应该做的是:

r = (RecyclerView) v.findViewById(R.id.feedRecyclerView);